求助: 大批量数据同时更新问题

问题描述

  • 数据量在百万左右
  • 需要保证用户看到最新的数据
  • 实时性要求高
  • 由于可配置规则的原因, 百万条数据的更新并不是同一规则, 即可能需要每一条或一批数据查到内- 存中单独计算
  • 计算完成后需要调用其他服务进行同步更新

    暂时想到的方案

  • 提前计算, 例如 00:00 需要更新, 则 23:50 开始定时任务提前计算, 计算好的数据放在 redis 中, 00:00 开始由另一个定时任务告知程序从 redis 中读取最新值. 对 23:50 至 00:00 之间产生的脏数据进行 mark, 00:00 重新计算.
  • 00:00 定时任务, 某一节点从 redis 中读取 clean 的最新值并发送到 MQ, 其余所有节点接受消息并写库

球球各位大佬出出方案, 谢谢! Orz!

阅读 1.9k
1 个回答

动态建一个结构一样的临时表,随时计算存入/更新临时表,0点把临时表表名改为正式表名,把原正式表改为历史表名

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题