分布式系统中的几种数据备份模式. 数据可靠性(基本,),数据一致性(脑裂问题,高可靠性容灾性),数据可用性(数据拆分,读写分离),系统扩展性.

25 篇文章 0 订阅
23 篇文章 0 订阅

分布式两个层面含义:
1. 分布式服务,rpc 调用
2. 分布式数据库

 cap 理论 和 caid 中 c 的区别.
   http://www.infoq.com/cn/articles/cap-twelve-years-later-how-the-rules-have-changed

其中数据的分布式又分
两个维度.

  • 同一份数据 N 个备份.
    CAP (
    一致性就是数据的可靠性,数据的正确性. 非强一致后的关机导致数据丢失,数据不可靠.) 要求数据强一致,且要求可用性高.那就是 zk 的1/2 ,并且主机宕机后要重新选举和数据同步.
    可用性 这个词在CAP理论里面,不只是指服务可以被访问,还有个属性是延迟,因为延迟这个属性很难被量化定义,延迟越低越好。
    )

  • 同一份数据拆成 N 块.
    提高整体并发极限. 数据的迁移,自动扩容,自动缩容. 扩展性.

    本文主要讲的是 分布式数据库中如何多份备份的一致性问题.

大并发,大数据
这里写图片描述
图来自 2010 谭俊青 mysql 数据库集群的高可用设计及应用
**
1. 先备份保证数据简单可靠性,
2. 用paxos来保证数据一致性,数据的高可靠性.
3. 数据备份同步用来保证读可用性.
4. 数据拆分来保证系统水平扩展性.
**
读写分离:读 salve 库,改到 master 库,压力还是太大怎么办?
1.半同步?
2.全同步?
3.不要从同步维度思考,使用 master-master 模式.(从master 转移角度思考.将一部分数据的 master 迁移到另外一台机器上. 把数据拆分和备份完美地整合在一起. )(缺点:索引总量并没有降低)

线下读太多怎么办?
通过slave 或者 hbase 解决,elasearch.
线上读太多怎么办?
线上写太多怎么办?

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值