zookeeper的命令行语法以及节点类型

Posted 阳哥赚钱很牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zookeeper的命令行语法以及节点类型相关的知识,希望对你有一定的参考价值。

 我们先在虚拟机上执行一下help命令:

命令基本语法

功能描述
help显示所有操作命令
ls path [watch]使用ls命令来查看当前znode中所包含的内容
ls -s path [watch]查看当前节点信息
create

普通创建

-s  含有序列
-e  临时(重启或者超时消失)

get path [watch]获得节点的值

set

设置节点的具体值
stat查看节点状态
delete删除节点
rmr递归删除节点

一、具体命令操作

1、启动客户端

zkCli.sh -server

2、显示所有操作命令

help

3、查看当前znode中所包含的内容

ls /

结果:[zookeeper]

4、查看当前节点详细数据

ls -s /
[zookeeper]cZxid=0x0
ctime=ThuJan0108:00:00CST1970
mZxid=0x0
mtime=ThuJan0108:00:00CST1970
pZxid=0x0
cversion=-1
dataVersion=0
aclVersion=0
ephemeralOwner=0x0
dataLength=0
numChildren=1

(1)czxid:创建节点的事务zxid
        每次修改ZooKeeper状态都会产生一个ZooKeeper事务ID。事务ID是ZooKeeper中所有修改总的次序。每次修改都有唯一的zxid,如果zxid1小于zxid2,那么zxid1在zxid2之前发生。

(2)ctime:znode被创建的毫秒数(从1970年开始)

(3)mzxid:znode最后更新的事务zxid

(4)mtime:znode最后修改的毫秒数(从1970年开始)

(5)pZxid:znode最后更新的子节点zxid

(6)cversion:znode子节点变化号,znode子节点修改次数

(7)dataversion:znode数据变化号

(8)aclVersion:znode访问控制列表的变化号

(9)ephemeralOwner:如果是临时节点,这个是znode拥有者的sessionid。如果不是临时节点则是0。

(10)dataLength:znode的数据长度

(11)numChildren:znode子节点数量

二、节点类型(znode)

首先zookeeper中的节点分为两大类:

持久(Persistent):客户端和服务器端断开连接后,创建的节点不删除

短暂(Ephemeral):客户端和服务器端断开连接后,创建的节点自己删除

        说明:创建znode时设置顺序标识,znode名称后会附加一个值,顺序号是一个单调递增的计数器,由父节点维护

        注意:在分布式系统中,顺序号可以被用于为所有的事件进行全局排序,这样客户端可以通过顺序号推断事件的顺序

那么,我们就可以把节点细分为以下四种:

(1)持久化目录节点:

客户端与Zookeeper断开连接后,该节点依旧存在

(2)持久化顺序编号目录节点:

客户端与Zookeeper断开连接后,该节点依旧存在,只是Zookeeper给该节点名称进行顺序编号

(3)临时目录节点:

客户端与Zookeeper断开连接后,该节点被删除

(4) 临时顺序编号目录节点

客户端与Zookeeper断开连接后,该节点被删除,只是Zookeeper给该节点名称进行顺序编号。

以上是关于zookeeper的命令行语法以及节点类型的主要内容,如果未能解决你的问题,请参考以下文章

Zookeeper3.5.7版本——客户端命令行操作(命令行语法)

Zookeeper3.5.7版本——客户端命令行操作(znode 节点数据信息)

Zookeeper节点知识点整理

Zookeeper——客户端命令行的相关指令操作

zookeeper基本命令行操作

大数据之Zookeeper:客户端命令行操作