gpt4 book ai didi

php - 10,000,000行数据库的最佳存储引擎

转载 作者:行者123 更新时间:2023-11-29 14:40:24 25 4
gpt4 key购买 nike

我有一个包含 10,000,000 多行的数据库表,我对其进行处理以创建一个新表。什么类型的存储引擎最适合读取?

目前我使用:

$sql = "UPDATE `packages_unsorted` SET `acv_return_viadetails` = '0';";

然后选择记录:

$sql = "SELECT * FROM `packages_unsorted` WHERE `acv_return_viadetails` = '0' LIMIT 1000;";

我收集主键id放入名为 $ids 的数组中,然后处理记录并将数据写入 CSV 文件,以便在每 1000 行末尾导入。然后我用以下内容更新 acv_return_viadetails 字段:

$sql = "UPDATE `packages_unsorted` SET `acv_return_viadetails` = '1' WHERE `id` IN ('".implode("','",$ids)."') LIMIT 1000;";

由于上面是对表的唯一写入,我每次都选择所有字段。我应该使用内存表或其他类型的存储引擎来加快速度吗?或者我可以引入任何其他优化来加快速度吗?

对于这样的操作,合理的 my.cnf 配置是什么。

提前致谢:)

最佳答案

您在 acv_return_viadetails 字段上有索引吗?

如果你想加快导入速度,我刚刚用C++编写了一个程序,可以在65秒内将300MB的文件导入mysql。也许您可以对其进行调整以供您使用。

参见https://github.com/homer6/import-geoip-data

关于php - 10,000,000行数据库的最佳存储引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8110433/

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