Zookeeper的数据模型、节点、角色

一、Zookeeper的数据模型

1、层次化的目录结构,命名符合常规文件系统规范

2、每个节点在zookeeper中叫做znode,并且其有一个唯一的路径标识

3、节点Znode可以包含数据和子节点,但是EPHEMERAL类型的节点不能有子节点

4、Znode中的数据可以有多个版本,比如某一个路径下存有多个数据版本,那么查询这个路径下的数据就需要带上版本

5、客户端应用可以在节点上设置监视器

6、节点不支持部分读写,而是一次性完整读写

二、Zookeeper的节点

1、Znode有两种类型,短暂的(ephemeral)和持久的(persistent)

2、Znode的类型在创建时确定并且之后不能再修改

3、短暂znode的客户端会话结束时,zookeeper会将该短暂znode删除,短暂znode不可以有子节点

4、持久znode不依赖于客户端会话,只有当客户端明确要删除该持久znode时才会被删除

5、Znode有四种形式的目录节点,PERSISTENT、PERSISTENT_SEQUENTIAL、EPHEMERAL、EPHEMERAL_SEQUENTIAL

三、Zookeeper的角色

1、领导者(leader),负责进行投票的发起和决议,更新系统状态

2、学习者(learner),包括跟随者(follower)和观察者(observer),follower用于接受客户端请求并想客户端返回结果,在选主过程中参与投票

3、Observer可以接受客户端连接,将写请求转发给leader,但observer不参加投票过程,只同步leader的状态,observer的目的是为了扩展系统,提高读取速度

4、客户端(client),请求发起方



你可能感兴趣的:(hadoop,zookeeper)