#青训营笔记创作活动#
2月5日 打卡day17
今日学习了分库分表
分库分表是分别的两个概念 ,通过一定的规则,将原本数据量大的数据库拆分成多个单独的数据库,将原本数据量大的表拆分成若干个数据表,使得单一的库、表性能达到最优的效果(响应速度快),以此提升整体数据库性能。因为数据库容量有限,连接数有限,单表容量有限,因而实际场景中为了提高性能,需要分库分表。
分库分表的核心就是对数据的分片(Sharding)并相对均匀的路由在不同的库、表中,以及分片后对数据的快速定位与检索结果的整合。
分库分表后需要使用一定的路由规则来找到数据,常见的有取模算法 、范围限定算法、范围+取模算法 、预定义算法。
分库分表存在分页、排序、跨节点联合查询,事务一致性,全局唯一的主键,多数据库高效治理,历史数据迁移等问题。
分库分表架构主要有两种模式:client客户端模式和proxy代理模式
展开
评论