Hadoop选举以及副本策略

17.Hadoop选举以及副本策略

默认是采用投票数大于半数则胜出的逻辑。

 

选举流程简述

 

目前有5台服务器,每台服务器均没有数据,它们的编号分别是1,2,3,4,5,按编号依次启动,它们的选择举过程如下:

 

服务器1启动,给自己投票,然后发投票信息,由于其它机器还没有启动所以它收不到反馈信息,服务器1的状态一直属于Looking。

 

服务器2启动,给自己投票,同时与之前启动的服务器1交换结果,由于服务器2的编号大所以服务器2胜出,但此时投票数没有大于半数,所以两个服务器的状态依然是LOOKING。

 

服务器3启动,给自己投票,同时与之前启动的服务器1,2交换信息,由于服务器3的编号最大所以服务器3胜出,此时投票数正好大于半数,所以服务器3成为领导者,服务器1,2成为小弟。

 

服务器4启动,给自己投票,同时与之前启动的服务器1,2,3交换信息,尽管服务器4的编号大,但之前服务器3已经胜出,所以服务器4只能成为小弟。

 

服务器5启动,后面的逻辑同服务器4成为小弟。

 

 

HDFS的副本放置策略的基本思想是:

 

第一种:

一般情况下副本系数为3,HDFS的副本放置策略是:

将第一个副本放在本地节点,

将第二个副本放在本地机架上的另一个节点,

而第三个副本放到不同机架上的节点。

 

这种方式减少了机架间的写流量,从而提高了写的性能。机架故障的机率远小于节点故障。这种方式并不影响数据可靠性和可用性的限制,并且它确实减少了读操作的网络聚合带宽,因为文件块仅存在两个不同的机架,而不是三个。文件的副本不是均匀的分布在机架当中,1/3的副本在同一个节点上,1/3副本在同一个机架上,另外1/3个副本均匀地分布在其他机架上。

 

第二种副本放置策略:

第一副本:放置在上传文件的DataNode上;如果是集群外提交,则随机挑选一台磁盘不太慢,CPU不太忙的节点上;

第二副本:放置在于第一个副本不同的机架节点上;

第三副本:与第二个副本相同机架的不同节点上;

如果还有更多的副本,则随机放在节点中。

下图为三副本配置示意图

 

 

猜你喜欢

转载自blog.csdn.net/qq_37001101/article/details/84189692
今日推荐