Mysql任务:DELETE + INSERT或SELECT + UPDATE

时间:2017-01-22 14:40:18

标签: mysql

MySQL数据库只有一个表products。表记录包含1个整数自动增量主键,1个整数modified_time字段和10个varchar字段。

每天两次CRON启动流程,从其他服务器接收带有新/更新/旧产品的700.000 XML记录。通常每天有大约100,000个新产品更新(其他600.000不会改变)。

问题是哪种方式会更快 1)制作类似DROP TABLE的内容,然后重新创建相同的表格或DELETE * FROM products。然后INSERT我们收到的一切(700k记录)。 2)在每个XML记录上启动循环,比较modified_time字段和UPDATE,如果XML modified_time比数据库中的modified_time更新。

据我所知,第二种方式将导致700k SELECT查询,100k UPDATE查询和一些DELETE查询。

那么哪种方式会更快?提前致谢

0 个答案:

没有答案