麻了!亿级别大表拆分心路历程
💡
原文中文,约3800字,阅读约需9分钟。
📝
内容提要
本文强调后端程序员需要具备的业务、技术和管理能力,对人的综合素质有帮助。文章链接提供。
🎯
关键要点
-
后端程序员需要具备业务、技术和管理能力。
-
接手财务系统时发现存在5000W+的大表,数据量持续增长。
-
大表拆分的目标是将数据分散到各个分表,保持每张表在1000W左右。
-
拆表过程中面临接口超时、数据迁移和多方协调等难点。
-
采用sharding-jdbc作为分表插件,支持多种分片策略。
-
选择“交易时间”作为分表依据,确保数据均匀分布。
-
解决多数据源事务问题和多表分页问题,设计新的分页方法。
-
数据迁移方案结合DBA和手写代码,控制迁移数据量。
-
上线流程分为三个阶段,确保新表功能稳定。
-
强调程序员的沟通能力和综合素质,后端程序员需协调各方工作。
➡️