背景

当前系统数据量级别千万级或亿级,单表无法支撑业务量,需要考虑拆表或分表,且迁移同时不能影响线上业务

概况

  • 千万或亿级数据量
  • 不能影响线上业务,系统24小时运行,不可停机
  • 需要拆表迁移数据

方案

考虑到上述情况,在不影响线上业务的情况下,需要将业务数据同步至数据仓库,默认情况下每天凌晨同步前一天的增量&修改数据;再从数据仓库将数据迁移至分表中,可以通过更新时间的字段作为分界线,更新时间小于选定值的数据为初始量,大于选定值得为增量;初始量同步完成后定期同步增量数据,直到写入新表的功能上线

  • 数据同步至数仓
  • 选定字段分割初始量、增量数据
  • 同步初始量数据
  • 定期同步增量数据
  • 系统上线
  • 关闭数据同步
  • 下线旧表

优化思考

可以采用主从分离,写主库,然后迁移系统接入从库做増量数据处理,保证迁移完成前业务不受影响,平滑过渡


老污的猫
30 声望5 粉丝