数据模型

ZK的数据模型采用类似文件系统的层次模型, 与Key-value模型相对应. 它采用文件系统模型主要基于以下两点考虑

  1. 文件系统的树形结构便于表达数据之间的层次关系
  2. 文件系统的树形结构便于为不同的应用分配独立的命名空间

ZK 的层次模型称作 Data tree. Data tree 的每个节点叫做 znode.

不同于文件系统, ZK 的每个节点都可以保存数据, 并且每个节点都有一个版本, 从0开始计数

data tree 接口

ZK 对外提供一个用来访问 data tree 的简化文件系统API:

znode 分类

znode 可以是持久性的, 也可以是临时性

znode 也可以是顺序性的. 每一个顺序性的znode关联一个唯一的单调递增整数. 这个单调递增整数是 znode 名字的后缀. 如果 znode 具备顺序性, 那么又会以下两种 znode