mysql 数据库百万记录,定时从另一个数据库增量更新,如何确保其性能和健壮?

2017-08-18 13:09:30 +08:00
 qq12345454

mysql,

表名 table_a 大概几百万个记录,

每条记录都有个 updated 字段,表示本条记录最后更新时间

现在需要每隔 1 小时,拿着自己的 id,去 table_b,看看对应的数据是否有更新, 如果有,就更新到 table_a 中,并更新 table_a 中的 updated 字段

目前是不知道如何高效的从 table_a 中取出数据

目前的思路如下:

先得出当前的时间,赋值给 now

打算每次获取 100 条记录到内存里(程序里)进行循环更新,所以 limit 后面定为 100

select * from table_a where updated < now order by updated desc limit x,100

x 为指针位置

然后一直这样循环,直到最后取不出数据,就表示,本轮更新结束

大家觉得这种获取数据的方法是否高效, 是否健壮?

请问有更好的办法吗?

谢谢

2771 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/383928

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX