hadoop核心组件zookeeper简介与特点

zookeeper是一个针对大型分布式系统的可靠协调系统。

1)它提供的功能包括:配置维护,名字服务,分布式同步,组服务等;

2)它的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效,功能稳定的系统提供给用户;

hadoop核心组件zookeeper简介与特点

特点:

1,最终一致性:为客户端展示同一试图

2,可靠性:如果一条消息被一台服务器接受,那么它将被所有的服务器接受。

3,实时性:zookeeper不能保证两个客户端同时得到刚刚更新的数据,如果需要最新数据,应该在读数据之前调用sync()接口。

4,等待无关(wait-free):慢的或者失效的client不干预快速的client的请求。

5,原子性:更新操作要么成功,要么失败,没有中间状态。

6,顺序性:对于所有server,同一消息发布顺序一致。


基本原理

hadoop核心组件zookeeper简介与特点

server很多,有主从之分,不过有一个leader,其他是follower,

每个server,在内存中存有一份数据,启动时,将选举出一个leader,根据poxos协议选举

leader负责处理数据更新操作,用到zab协议

一个更新操作成功的标志,大多数server在内存,成功修改数据(一个有5个,有3个写成功了)