MySql大数据操作(超过3000万条数据记录) - 最佳方式

时间:2012-05-10 06:35:33

标签: mysql database performance

表一: 3500万条记录 表二: 1,600万条记录

我正在基于3个等式执行表1中的更新查询。两个表都是纯数据,没有任何键。

`UPDATE table1,table2
SET table1.TravelTime=table2.CongestionTime
WHERE table1.From = table2.From
AND table1.To = table2.To
AND table1.Time= table2.Time`

然而,这项行动似乎注定要缓慢。有没有办法创造性地加速这个过程?

目前,查询的运行速度仅为每秒300次,表明完成此查询需要33个小时。

1 个答案:

答案 0 :(得分:5)

  

这两个表都是没有任何键的纯数据。

我想你刚才在那里说过。在处理大量数据时,您需要索引才能获得良好的性能。

尝试添加多列索引:

    表1的
  • (From, To, Time)
  • 表2的
  • (From, To, Time, CongestionTime)

您可能还想考虑是否适合添加外键约束。

相关文档