zookeeper存储数据结构-持久化目录节点、临时目录节点、持久化顺序编号目录节点、临时顺序编号目录节点

介绍

zookeeper存储数据结构 类似 unix(linux)文件系统

如下图:

蓝色为znode,绿色是znode的数据

znode

类似与unix(linux)文件系统,每个节点(如 NameService)被称为 znode(目录节点),能够自由的增加、删除znode,在一个znode下增加、删除子znode

与文件系统不同的是,这些节点都可以设置 关联的数据

Zookeeper为了保证 高吞吐 和 低延迟,在内存中维护了这个树状的目录结构,这种特性使得Zookeeper不能用于存放大量的数据,每个节点默认最多存放 1M数据

有四种类型的znode

  1. PERSISTENT-持久化目录节点
    客户端创建的节点,当客户端与zookeeper断开连接后,该节点依旧存在

  2. EPHEMERAL-临时目录节点
    客户端创建的节点,客户端与zookeeper断开连接后,该节点被删除

  3. PERSISTENT_SEQUENTIAL-持久化顺序编号目录节点
    客户端创建节点后,Zookeeper给该节点名称进行顺序编号,并且客户端与zookeeper断开连接后,该节点依旧存在

  4. EPHEMERAL_SEQUENTIAL-临时顺序编号目录节点
    客户端创建节点后,Zookeeper给该节点名称进行顺序编号,并且客户端与zookeeper断开连接后,该节点会被删除

顺序编号

创建znode时设置顺序编号,znode名称后会附加顺序号,该顺序号是递增的,由父节点维护

应用场景:节点名字不能同名,当创建同名节点时,可用 顺序编号节点


原文出处:/show_1IXKSFVE6aZ.html