MyCAT介绍

1、MyCAT介绍

MyCAT是数据库的中间层,可以帮助我们在高并发场景下的分库分表操作,以提升数据库的整体性能。

MyCAT是基于阿里的Cobar开发,每年双11的高并发场景。

对于数据库工程师来说

MyCAT相当于MySQL SERVER层

MySQL相当于MyCAT测存储层

MyCAT中不存储数据,所有数据存储在MySQL中

对于研发人员是来说

MyCAT就是MySQL 

MyCAT对于研发人员来说几乎是透明的

MyCAT对使用SQL有一些限制

对于架构师来说

MyCAT是一个数据中间层

MyCAT可以实现对后端数据库的分库分表和读写分离

MyCAT对前端应用隐藏了后端数据库的存储逻辑

2、其它数据库中间层产品

OneProxy

MaxScale

3、MyCAT的主要作用

1) 实现后端数据库的读写分离以对读数据库实行负载均衡

2) 对业务数据库进行垂直切分

3) 对业务数据库进行水平切分

4) 控制数据库连接的数量

MyCAT介绍

MyCAT与其它数据库中间产品的区别:

MySQL是主从(1主1从)架构的时候,当监控到主数据库挂掉后,剔除主数据库。把读操作也转成到了从数据库

4、MyCAT基本元素

1) 逻辑库:

对应用来说相当于MySQL中的数据库

逻辑库可对应后端多个物理数据库

逻辑库中并不保存数据

2) 逻辑表

对应用来说相当于MySQL中的数据库

逻辑表可对应后端多个物理数据库中的表

逻辑表并不保存数据

逻辑表的类别

分片表(相同的表结构)和非分片表是否被分片划分

全局表, 在所有分片中都存在的表

ER关系表,按ER关系进行分片的表

相关推荐