mysql 怎么搭建rac_MySQL Cluster和RAC实现比较

MySQL Cluster和RAC实现比较

经常免不了拿MySQL Cluster(以下简称MySQL)和ORAClE(RAC)来对比。

MySQL使用了shared nothing的架构,而RAC使用的是shared everything的架构.

先看读一个数据块的处理,在RAC中当数据块在本地的cache中,可以直接

操作,如果在远端的话,需要请求远端的实例发送到本地来,然后再进行操作.如果

本块和远端都没有则请求一个读磁盘块的操作.RAC通缓存融合把整个集群的cahce看

做是一个大cache

MySQL读一个块,因为数据是同步复制的,直接在本地就有整个数据所有复本,这样

直接读取就可以了。如果是写操作的话,那么就需要在所有节点上进行写操作,整个过程是通过

两阶段事务提交协议来实现的。可以看出当在一个节点上写操作时,需要在其他节点上

全部写入,本地事务才能提交,这样当一个节点写入慢了,整个事务响应都比较慢,

而且整个集群在写密集操作时,写入次数非常大,比如在一个节点上写一个块,那么整个

集群的写次数  total writes=node numbers*writes. 从这个公式可以看出,随着节点数增

加,写性能急剧下降.

看RAC的写操作,如果数据块在本地,那么直接写操作就可以了,因为是shared everything

的架构整个数据只要写一份就可以.

有说MySQL 有自动对数据进行分片的功能,那么整个集群看起来就像一个RAID0,可靠性

极低.另外对于一些操作,需要扫描所有的数据节点,那么这样的操作性能也会非常

非常低。

在不考虑很强的数据一致性的前提下,个人认为MySQL Cluster对只读应用比较合适.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值