zoukankan      html  css  js  c++  java
  • Mysql 千万数据快速导入

    最近碰到个项目,需要 千万条数据入库的问题,有原本的 类 csv 文件导入,

    统计了下  数据行大概有 1400W 行之多

    二话不说, 建表,直接 load

    LOAD DATA LOCAL INFILE '/data/data.csv' INTO TABLE pk_book_price CHARACTER SET utf8  FIELDS TERMINATED BY ',' LINES TERMINATED BY ' ' (`no`,`name`,`price`,`ranking`);

    照理说 这种方式 应该是非常快的, 可导入完成还是活生生地耗费了接近3个多小时。

    后来经过搜集各方资料查证,终于找到还算靠谱的解决方案:

    1、建表,但除去所有索引。

    2、 依然 load data local infile 方式导入。

    3、 数据导入完成后 再进行索引。

    依照此过程下来,数据导入 花费差不多 5分钟左右,  索引重建在半小时左右,整个40分钟内完成。还算能接受了。

    因此表只需满足 按照no查询即可,没有涉及 其他复杂sql,也无数据增量,只有简单key-value查询。所以没有作水平,垂直,分库 等操作,只建索引已经达到性能要求。

    其他,不再多述。

    有更好方法,请分享之。

  • 相关阅读:
    apscheduler 踩坑
    fastapi 导出excel文件
    python flask 使用日志
    git 头指针游离问题
    C# 连接mysql填坑
    前端项目proxy小问题
    需完善--日志框架
    依赖<dependency>的scope了解
    git 退回到指定tag版本
    git切换远程仓库地址
  • 原文地址:https://www.cnblogs.com/taozi32/p/5705807.html
Copyright © 2011-2022 走看看