难得一见如此接地气的分库分表全程实践( 六 )

下面整理下目前我们的做法供大家参考:

一旦分表上线后所有的数据写入、查询都是针对于分表的,所以原有大表内的数据必须得迁移到分表里,不然对业务的影响极大;我们估算了对一张 2 亿左右的表进行迁移,自己写的迁移程序,大概需要花 4~5 天的时间才能完成迁移;意味着这段时间内,以前的数据对用户是不可见的,显然这样业务不能接受;于是我们做了一个兼容处理:分表改造上线后,所有新产生的数据写入分表,但对历史数据的操作还走老表,这样就少了数据迁移这一步骤;只是需要在操作数据之前做一次路由判断,当新数据产生的足够多时(我们是两个月时间),几乎所有的操作都是针对于分表,再从库启动数据迁移,数据迁移完毕后将原有的路由判断去掉;最后所有的数据都从分表产生和写入。至此整个分表操作完成。

难得一见如此接地气的分库分表全程实践

难得一见如此接地气的分库分表全程实践

5、业务兼容

推荐阅读