Mycat–实践–03–mycat名词解释
1、逻辑库
- 管理多个物理库,是对多个物理库的抽象。
- 在Mycat中逻辑库在{MYCAT_HOME}/conf/schema.xml 用< schema > 标签定义
[外链图
防盗链机制,建议将图片保存下来直接上传(img-TI999KiF-1641867241382)(./image2/20.png)]
2、逻辑表
-
管理多个物理表,是对多个物理表的抽象。包含下面4种类型
- 分片表
- 全局表
- ER表
- 非分片
-
在Mycat中逻辑表在{MYCAT_HOME}/conf/schema.xml 用< table > 标签定义
3、分片表
将大数据的表,切分到多个表,每个分片都有表的一部分数据,所有分片数据的合集构成了完整的表数据。
4、分片规则
-
将大数据的表,切分到多个数据分片的策略。比如下面的规则
-
详细规则在{MYCAT_HOME}/conf/rule.xml中进行定义
5、全局表
- 全局表在所有分片上,数据都一样的。
- MYCAT对全局表进行数据的修改,新增,删除时,所有的分片数据都将受到影响。
5.1、适用场景
- 类似数据字典表的表
- 或者以下几个特性的表
• 数据变动不频繁;
• 数据规模不大,数据量在十万以内;
• 存在跟其他表(特别是分片表)有一点的关联查询要求。
6、ER表(一对多,多对一)
-
子表的记录与所关联的父表记录存放在同一个数据分片上,即子表依赖于父表,通过表分组(Table Group)保证数据 Join 不会跨库操作。
-
这样一种表分组的设计方式是解决跨分片数据 join 的一种很好的思路,也是数据切分规划的重要一条规则。
-
ER表中在{MYCAT_HOME}/conf/schema.xml中使用< childTable >标签进行描述和定义
7、非分片表
- 不需要进行数据切分的表。
- 在schema.xml中具体的定义,如下
8、分片节点
- 大数据表进行数据切分后,每个表分片所在的数据库就是分片节点
- 在schema.xml中使用< dataNode >进行分片节点的定义
9、节点主机
- 就是分片节点所在的机器
- 为了规避单节点主机并发数限制。尽量将读写压力高的分片节点(dataNode)均衡的放在不同的节点主机
- 在schema.xml中使用< dataHost >进行分片节点的定义
9.1、节点定义
名称 | Ip | Port |
---|---|---|
M1 | 192.168.187.130 | 3307 |
M1S1 | 192.168.187.130 | 3308 |
M1S2 | 192.168.187.130 | 3309 |
M2 | 192.168.187.130 | 3310 |
M2S1 | 192.168.187.130 | 3311 |