上一节介绍了zookeeper线网环境安装教程,本章将继续介绍zookeeper中的数据存储模型。
1、数据存储结构
zookeeper的数据模型采用类似文件系统的目录结构进行存储,目录树中的每个节点被称为Znode,Znode既可以存储数据,也可以拥有自己的子节点。
zookeeper中节点必须通过绝对路径进行访问,以斜杠/开头,其中路径和节点是一一对应的,即一个节点有唯一的路径标识,一个路径仅可以表示一个节点。其存储结构如下图所示:
2、Znode中存储的数据
Zookeeper中的每个znode由三部分组成。分别是该Znode节点的元数据、数据信息和该Znode下的子节点信息。
- 元数据:元数据中包含Znode的一些状态信息,如创建时间、修改时间、版本号、权限列表等。
- 数据信息:存储在该ZNode中的数据信息。 该数据信息的大小有限制,通常不允许超过1M,但是常规使用中应远小于这个值
- 子节点信息:该Znode下的子节点
zookeeper虽然可以存储数据,但是它设计的目录不是作为一个数据库的存在,而是用来管理分布式系统中的一些配置及状态信息,所以ZNode节点中的数据大小是有限制的,不允许超过1M,正常使用过程中应该远小于1M。其中每个ZNode节点的操作都是原子操作,对节点数据的存取都是全量的。