zookeeper的基本数据模型 一

  • 是一个树形结构,类似于前端开发中的tree.js组件

image.png

zookeeper的基本数据模型 二

image.png

zookeeper的基本数据模型介绍 三

  • zk的数据模型也可以理解为linux/unix的文件目录:/usr/local/…
  • 每一个节点都称之为znode,它可以有子节点也可以有数据

    子节点可以理解为 父目录下的 子目录

  • 每个节点分为临时节点和永久节点,临时节点在客户端断开后消失

    临时节点就是 在session失效之后,临时节点的数据和节点全部都会丢失;而永久节点,session断开后,数据也会存在

    zookeeper的基本数据模型介绍 四

  • 每个zk节点都有各自的版本号,可以通过命令行来显示节点的信息

  • 每当节点数据发生变化,那么该节点的版本号会累加(乐观锁)

    可以理解为 mysql中的 乐观锁

  • 删除/修改 过时的节点,版本号不匹配会报错

    zookeeper的基本数据模型介绍 五

  • 每个zk节点存储的数据不宜过大,几K即可

  • 节点可以设置权限acl,可以通过权限来限制用户的访问