分库分表
1、为什么要分库分表?
2、分库分表的方式:
1、分库分表有两种方式:垂直切分 和 水平切分
2、垂直切分:垂直分表 和 垂直分库
垂直分表
(1)操作数据库中某张表,把这张表中一部分字段数据存到一张新表中,再把这张表另一部分 段存到另外一张表中
垂直分库:
(1)把单一的数据库按照业务进行划分成多个数据库,做到专库专表
3、水平切分:水平分表 和 水平分库
水平分库
创建多个相同结构的数据库,A B是完全一样的
在存储数据时,需要加一个规则,具体存向哪个库
水平分表
数据库中创建结构相同的多张表
3、分库分表应用和问题
1】应用
(1)在数据库设计的时候考虑垂直分库和垂直分表
(2)随着数据库数据量的增加,不要马上考虑做水平切分,首先考虑缓存,读写分离,使用索引,如果这些方式不能根本性解决问题,再考虑做分库分表
2】分库分表问题 【好处,解决单库单表数据量大造成的性能下降问题】
(1)跨节点连接查询的问题 (分页,排序)
(2)多数据源管理的问题