我在将巨大的csv文件解析成mysql数据库时遇到了一些问题。在
Csv文件如下所示:
ref1 data1 data2 data3...
ref1 data4 data5 data6...
ref2 data1 data2 data3 data4 data5..
ref2 data12 data13 data14
ref2 data21 data22...
.
.
.
Csv文件有大约100万行或约7MB的zip文件或约150MB解压。在
我的工作是将csv中的数据解析成mysql,但是只有引用匹配时的数据/行。另一个问题是,从csv中的多行中,我必须在mysql中的一行中解析它,以供一个引用。在
我试着用csv.reader以及每个引用上的for循环,但速度非常慢。在
^{pr2}$所以我有我想解析的所有引用,在我的列表用户中。哪种方法是最快的解析方法?在
请帮忙!在
第一个明显的瓶颈是重新打开并扫描数据库中每个用户的整个CSV文件。在csv上执行一次操作会更快:
^{1}$你还没有把你所有的逻辑都包括进去。如果您只想将所有内容导入到一个表中
^{1}$MySQL直接执行。你再快不过了。在
Documentation
使用:
^{1}$这是mysql中的一个内部查询命令。在
我不建议您使用制表符分隔列,建议您将sed更改为;或其他字符。但你也可以试试标签。在
相关问题 更多 >
编程相关推荐