如何优化将大量数据摄取到 MySQL 数据库中?

Dav*_*vid 2 mysql linux ubuntu

我有一个大小约为 100GB 的数据库。每天必须用大约 8GB 的​​数据更新数据库。使用第三方(Apple)编写的脚本(python)将数据摄取到数据库中。数据是与数据库中不同表有关的文件集合。

目前每天更新数据库大约需要 15 个小时。我正在本地机器上运行更新(四核 2.6GHz、6GB Ram、32 位 Ubuntu 11 和 MySQL 5.1)。

最终,此过程将卸载到 Amazon EC2 服务。为了显着减少每天摄取所有数据所需的时间,优化此过程的最佳方法是什么?

您的建议将不胜感激。谢谢你。

小智 5

使用 CSV 文件LOAD DATA INFILE,它比运行 SQL 快得多。

另一种选择是通过启动多个客户端或使用 Maatkit 的mk-parallel-restore并行导入 SQL 文件