【二】MyCAT主要作用、读写分离、负载均衡、垂直切分、水平切分概述

主要作用:

1作为分布式数据库中间层使用

MyCAT由Java开发,理论上说所有可以使用JDBC连接的关系型数据库和非关系型数据库都能使用MyCAT。

2.对主从数据库的读写分离、读的负载均衡

如果不用MyCAT,在每一个访问这套数据库的应用中都要实现读写分离的逻辑。

如果MySQL是一主多从,主卦了,MyCAT会选一个从来读写,但是其他从不会同步新主的数据。

所以MySQL是一主多从要做高可用建议使用MHA之类的主从复制管理工具。

3.对业务数据进行垂直切分、写的负载均衡

把原来保存到同一个DB中的表,按照业务模块拆分到多个DB中

比如,订单/仓配、用户、商品的表都在a数据库中,现在把订单/仓配放到a数据库中,把用户放到b数据库中,把商品放到c数据库中。

MyCAT的逻辑库功能,会把3组不同的数据库虚拟成一个数据库,还保持原来的a名字不变。这可以最大限度的减少对已经存在的应用的修改。

4.对业务数据库进行水平切分、写的负载均衡

在垂直切分的基础上,再把a数据库中订单/仓配进行水平切分。F(c)=1放在order01库,F(c)=2放在order02库,F(c)=3库放在order03。

F函数代表切分规则,c代表指定切分的列,c是要进行水平切分的表中的某一列,通常是主键。

这一整套的切分逻辑在引入MyCAT后就由MyCAT来实现了,不用在每一个应用中单独实现。

5.控制数据库接连的数量

MyCAT中可以建立公共连接池,供不同应用使用,从而有效控制数据库连接的数量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值