一、基本概念
1.垂直分片 水平分片
2.分表 分库
注:第一种在同一个数据库内分表,不经常采用,因为这种方式无法分担IO,IO和处理能力全部压在一台机器上,无法进行Join等复杂操作,经常采用的是分库第二种形式
3.逻辑表 逻辑库
逻辑库和逻辑表不是实际存在的一个表,一个逻辑库可以对应多个实际存在的物理库,一个逻辑表也可以对应多个实际存在的物理表
4.分片节点
分片节点:一个DataNode对应的是一个数据库节点,schema XX@hostYY 对应的两部分 1.schema 哪一个数据库 2.hostYY 那一台机器
一开始DataNode1,DataNode2,DataNode3,是在同一台机器上A上,如果业务增加,可以加入B,C两个机器
5.DataHost
DataHost:对应MySQL的复制组,复制组分为两种,主从复制和多点复制
6.心跳检测 读写分离
7.分片字段 分片规则 SQL路由
SQL路由:通过分片条件去匹配分片规则
8.E R分片
E R分片主要用来解决垮分片Join的问题
9.全局表
进行CRUD时,多个MySQL表都会同时被更新,这样 能保证每个表的数据都是一样的
10.全局序列号
二、MySQL的功能
1.高可用性和MySQL读写分离
2.业务数据分级存储
同一个逻辑库,可以分在不同的机器,不同的逻辑库上,不同的逻辑库可以采用不同类型的数据库