mycat - 数据库中间件 学习记录2
没想到mycat的学习第2期来得这么快我都招架不来

在花了6块RMB进入该官方群后,想了解点具体的.


看到大家都还在讨论,我很高兴,这6RMB买吨早饭的钱没白浪费.
其中我看到有人在讲:
mycat的最主要功能就是分片,

分为垂直分片和水平分片
垂直分片(上图左侧):是把一个大表拆成几个表.
水平分片(上图右侧):是把一个表按行去拆,也就是id区间.
那么水平分片应用比较多:

分表(上图左侧):把一个表拆分为table1/2/3三个表,属于库内分表,这种方式属于小众的,它最终无法分担IO,IO和tree能力全都压在一台机器上,也无法做到join等复杂操作
分库(上图右侧):在不同的schema上,表名相同,这样呢就属于分库
那么还是择优讲,分库:

逻辑库是什么呢?在Mycat当中默认的一个TESTDB或者你命名的那个就是逻辑库
它跟物理库可以是没有任何关系,
逻辑库里有逻辑表,这个如果做分片要和物理库的物理表名称一致.
这里听到分片就想到了汉尼拔第二季第五集女法医被人体切片的镜头啊...
言归正传,这里的分库,是可以在一台机器的mysql实例上,也可以是不同机器的mysql实例上
DataNode是什么?

DataNode是在schema和实际数据库中间多的一层,
好处是什么呢?

DataNode的好处在于即使3个DataNode在一个mysql实例上,数据增大时可通过实例扩展分片到其他数据库上面.
DataNode可组装式使用.
其实主从复制是这样在MyCat中


dataNode, name 是唯一的标识, dataHost是主从复制组(集群)
下面是dataHost主从复制组
\\
分片字段,分片规则,以及SQL路由

本文来自博客园,作者:ukyo--碳水化合物,转载请注明原文链接:https://www.cnblogs.com/ukzq/p/12302831.html

浙公网安备 33010602011771号