gpt4 book ai didi

mysql - 2亿条以上记录速度的LOAD INFILE

转载 作者:行者123 更新时间:2023-11-29 12:18:32 25 4
gpt4 key购买 nike

如果这个问题重复,我深表歉意,但我发现的大多数问题都与 InnoDB 有关,而我正在使用 MyISAM。

我正在尝试创建一个进程,将 200-3 亿条记录加载到表中。我正在使用 LOAD DATA INFILE,对于一个包含 1.78 亿条记录的文件,加载数据大约需要 30 分钟。任何人都可以建议任何方法来加快速度吗?或者这是相当预期的表现?我尝试在加载之前禁用按键,但这似乎并没有真正带来任何明显的速度提升。我还可以尝试哪些其他设置?

我的 Linux 服务器有 24 个相当现代的内核。我可以通过某种方式利用这一事实吗?

我要补充一点,我尝试加载 3000 万条记录,花了 5 分钟,这似乎与 1.78 亿条记录的性能水平大致相同。但是,如果我尝试将 3000 万条记录加载到已经有 3000 万条记录的表中,则需要 8 分钟。我可以做任何事,因为我相信这种情况也会发生很多次。

感谢任何帮助,但请知道我对数据库相当无知,因此示例或文档的链接将非常有帮助。

最佳答案

在某种程度上,这取决于给定记录的宽度,但听起来 30 分钟内 1.78 亿条记录对我来说已经是相当不错的速度了。我在 25 分钟内完成了 4600 万条记录的加载,并且非常高兴,但在我的案例中,每条记录都在进行一些处理。

几乎总有办法提高性能,但成本效益有时会让人望而却步。如果您的文件加载频率超过每 30 分钟一次,那么显然可能需要采取其他措施。但在这种情况下,我相信重新思考更大的系统以及您正在存储的内容/为什么要存储它也可能是有必要的。

至于将 3000 万条记录加载到空表与非空表之间的差异,这对于索引表来说并不意外。

关于mysql - 2亿条以上记录速度的LOAD INFILE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29376934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com