背景
当前系统数据量级别千万级或亿级,单表无法支撑业务量,需要考虑拆表或分表,且迁移同时不能影响线上业务
概况
- 千万或亿级数据量
- 不能影响线上业务,系统24小时运行,不可停机
- 需要拆表迁移数据
方案
考虑到上述情况,在不影响线上业务的情况下,需要将业务数据同步至数据仓库,默认情况下每天凌晨同步前一天的增量&修改数据;再从数据仓库将数据迁移至分表中,可以通过更新时间的字段作为分界线,更新时间小于选定值的数据为初始量,大于选定值得为增量;初始量同步完成后定期同步增量数据,直到写入新表的功能上线
- 数据同步至数仓
- 选定字段分割初始量、增量数据
- 同步初始量数据
- 定期同步增量数据
- 系统上线
- 关闭数据同步
- 下线旧表
优化思考
可以采用主从分离,写主库,然后迁移系统接入从库做増量数据处理,保证迁移完成前业务不受影响,平滑过渡
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。