1
4
https://dev.mysql.com/doc/refman/8.0/en/insert-optimization.html 假设将处理过的数据写回文本文件比将其插入数据库要快,那么这是一种很好的方法。 |
2
3
加载数据或多个插入将比单个插入要好得多;加载数据将为您节省一点点,您可能不太在乎。 在任何情况下,在一个事务中都要做很多,但不要做太多——每个事务10000行通常感觉是正确的(注意:这与非事务性引擎无关)。如果您的事务太小,那么它将花费所有时间将日志同步到光盘。 执行大插入的大部分时间将来自构建索引,这是一个昂贵且内存密集的操作。 如果你需要表演,
如果你必须使用myisam,这里有一些肮脏的把戏,以使它更好,我不会进一步讨论。 |
3
2
伙计们,我也有同样的问题,我的需求可能比一般的要具体一些,但我在这里写了一篇关于我的发现的文章。 http://www.mediabandit.co.uk/blog/215_mysql-bulk-insert-vs-load-data 对于我的需求来说,加载数据很快,但是需要动态保存到平面文件意味着平均加载时间比大容量插入要长。此外,我不需要做超过200个查询,在我一次做这个查询之前,我现在正在扩充它们,节省的时间在几秒钟之内。 不管怎样,希望这对你有帮助? |
4
1
你的方法应该不错。我不确定与大容量插入相比,数据填充的加载速度要快多少,但我听说了同样的事情,即它应该更快。 当然,您需要做一些基准测试来确保这一点,但我认为编写一些测试代码是值得的。 |
Sanjay · 批量插入不处理无效文件 7 年前 |
sam · 当没有标识列时,如何进行批量插入? 8 年前 |
Zaid Direya · 批量插入验证的最佳方法laravel 5 8 年前 |
Ankish Jain · ios Coredata大型集合插入 11 年前 |
Luke · 带逻辑的SqlServer大容量插入 11 年前 |