【发布时间】:2013-04-14 10:49:05
【问题描述】:
我有 node.js 脚本,它在服务器上作为 cron 作业运行。
它异步接收来自外部源的数据(多个并发请求)并使用多个查询语句更新数据库,其中 UPDATE 查询用分号分隔。
一个 8000-UPDATES 多查询运行大约 55 秒。
有没有办法以某种方式加快整个数据库更新过程?
单个查询很简单——喜欢
UPDATE my_table SET field1 = smth WHERE id = some_id;
索引是为 id 字段创建的。
【问题讨论】:
-
向我们展示您的查询和索引,以便我们了解查询的结构。有多少查询?
-
是的,我第二次显示查询、模式和每个表的行数,没有这些信息只是猜测。
-
表格有多少条记录?
-
大约几十万
-
@zavg 我认为查询的长度是问题所在。如此长的查询需要大量时间才能传输到数据库。我认为将要发送的查询一一拆分可能会加快速度并减少内存使用量。
标签: mysql performance node.js node-mysql