Sharding:数据库的终极扩展
当单库单表的数据量达到千万级,查询性能和 I/O 吞吐量面临瓶颈时,就需要进行 **分库分表(Sharding)**,实现数据库的 **水平扩展**。
核心策略:
- **垂直分库:** 按业务功能将不同业务的表分散到不同的数据库实例。
- **水平分表:** 按一定规则(如用户 ID 取模、时间范围)将同一张表的记录分散到多个数据库实例或多张表中。
分库分表引入了巨大的复杂性:**跨库 JOIN** 变得困难;**分布式事务** 需要解决;**全局唯一 ID** 需要生成器(如雪花算法)支持。后端团队必须使用专业的中间件(如 ShardingSphere)来屏蔽底层复杂性。分库分表是
评论区