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