Hadoop 3大数据部署与数据分析实战 课件 05-02-Zookeeper基本原理(Zab算法).pptxVIP

Hadoop 3大数据部署与数据分析实战 课件 05-02-Zookeeper基本原理(Zab算法).pptx

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

五、Zookeeper分布式协调服务

5.2Zookeeper基本原理

5.2Zookeeper基本原理

谈一个达成一致意见的问题

举例:班级需要决定召开班会的时间

5.2Zookeeper基本原理

班干部决策原则

每个人都知道其他人的存在

每个人都是平等的

少数服从多数

之前没有收到提议,那一定要接受提议。

先后收到不同提议,接受先收到提议。

5.2Zookeeper基本原理

具体场景

假设有一个总数是5人的班干群,多数人赞成则达成一致。

5.2Zookeeper基本原理

Quorum[kwɔrəm]

Thesmallestnumberofpeoplewhomustbeatameetingbeforeitcanbeginordecisionscanbemade.

译:会议召开或作出决定的最少参与人数。

这里可以理解为少数服从多数。

5.2Zookeeper基本原理

遇到冲突如何处理

同一次提案,接受先收到的提案,拒绝后面收到的提案

5.2Zookeeper基本原理

分布式一致性经典算法Paxos

Paxos算法

Paxos算法是莱斯利·兰伯特(LeslieLamport)于1990年提出的一种基于消息传递且具有高度容错特性的一致性算法。

5.2Zookeeper基本原理

Paxos算法

编号0

编号0

发送提案编号1:电费1元/度

编号0

编号0

1.提案议员查看记事本,按顺序提出提案。

编号0

5.2Zookeeper基本原理

Paxos算法

编号0

编号0

编号1

接受提案编号1:电费1元/度

编号0

编号1

编号0

编号1

2.接收提案议员查看记事本,提案编号大于记事本的最大编号,记录下提议,并回复接受提议。

编号0

编号1

接受

接受

接受

接受

新增

5.2Zookeeper基本原理

Paxos算法

编号0

编号1

编号0

编号1

编号1提案生效!

编号0

编号1

编号0

编号1

3.超过半数的回复,编号1提案生效

编号0

编号1

5.2Zookeeper基本原理

Paxos算法系列

基于消息传递通信模型的分布式系统,不可避免的会发生以下错误:进程可能会慢、被杀死或者重启,消息可能会延迟、丢失、重复。Paxos算法解决的问题是在一个可能发生上述异常的分布式系统中如何就某个值达成一致,保证不论发生以上任何异常,都不会破坏决议的一致性。

Paxos算法其中的几个变种BasicPaxos、Multi–Paxos和Fast-Paxos等。

5.2Zookeeper基本原理

BasicPaxos算法角色

每个成员(节点)都可以在以下三种角色直接切换,也可以兼任多种角色。

Proposer:提出提案(Proposal)。Proposal信息包括提案编号(ProposalID)和提议的值(Value)。

Acceptor:参与决策,回应Proposers的提案。收到Proposal后可以接受提案,若Proposal获得多数Acceptors的接受,则称该Proposal被批准。

Learner:不参与决策,从Proposers/Acceptors学习必威体育精装版达成一致的提案(Value)。

5.2Zookeeper基本原理

BasicPaxos算法步骤

1.Prepare阶段:

proposer选择一个提案编号n并将prepare请求发送给acceptors中的一个多数派;

acceptor收到prepare消息后,如果提案的编号大于它已经回复的所有prepare消息(回复消息表示接受accept),则acceptor将自己上次接受的提案回复给proposer,并承诺不再回复小于n的提案;

2.Accept阶段:

当一个proposer收到了多数acceptors对prepare的回复后,就进入Accept阶段。它要向回复prepare请求的acceptors发送accept请求,包括编号n和根据P2c决定的value(如果根据P2c没有已经接受的value,那么它可以自由决定value)。

在不违背自己向其他proposer的承诺的前提下,acceptor收到accept请求后即批准这个请求。

5.2Zookeeper基本原理

BasicPaxos算法图示

ClientProposer(P)Acceptor(A)Learner(L)

|||||||---达成一致的步骤---

X-------||||||(1)R

您可能关注的文档

文档评论(0)

xiaobao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档