【发布时间】:2011-09-06 23:24:33
【问题描述】:
我想加速的查询(或替换为另一个进程):
UPDATE en_pages, keywords
SET en_pages.keyword = keywords.keyword
WHERE en_pages.keyword_id = keywords.id
表 en_pages 具有正确的结构,但其中只有非唯一的 page_ids 和 keyword_ids。我正在尝试将实际的关键字(字符串)添加到与关键字 ID 匹配的此表中。表 en_pages 中有 2500 万行需要更新。
我正在添加关键字,以便可以实时查询这张表并返回关键字(连接显然对于“实时”来说太慢了)。
我们将此查询(以及其他一些查询)应用于我们更大数据集的子单元。我们经常这样做是为了为不同用户组的数据的特定子单元创建自定义界面(抱歉,如果这令人困惑)。
如果你给它一个小时的运行时间,这一切都很好,但我正在努力加快速度。
有没有更好的方法可以更快地使用 php 和/或 mysql?
【问题讨论】:
-
为什么要这么频繁地更新整个表?
-
什么是表引擎,你的硬件是什么,你的 MySQL 实例配置是什么等?