我正在导入一个数据库,里面有大约450万个条目,350个字段,和2个指标从.csv导入到sqlite数据库(这不是我设计的)。我读到的大多数性能问题都涉及到不使用批处理事务和类似的各种事情,但我想象使用sqlite命令行导入会尽可能快。然而我只是在四处走动~每秒150次插入。有没有办法加快速度?
就我所尝试的而言,我已经在没有两个索引的情况下重新创建了表模式,我也尝试过根据我从谷歌上读到的建议将PRAGMA同步设置为关闭,但这两种方法都没有帮助,我仍然得到相同的插入/分钟。
不管出于什么原因,前5,000次插入似乎几乎是瞬间发生的,但在那之后,它会慢到150次/秒左右。
1条答案
按热度按时间piv4azn71#
您可以尝试执行一些操作来加快导入速度。
1.关闭日志记录- PRAGMA journal_mode =关闭
1.如果您要导入到虚拟机,请增加资源,直到完成导入
1.也许转换您的csv到一个转储文件,因为这是原生的SQLite,应该导入更快
如果没有任何帮助,你可以尝试使用sqlite-utils Python库。这将允许你使用import_csv函数,这可能会导致更快的导入。在一天结束时,你的工作与一个巨大的数据集。