开发者学堂课程【大数据 ZooKeeper 快速入门:Shell 客户端:节点查看&更新&删除】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/549/detail/7566
Shell 客户端:节点查看&更新&删除
目录:
一、读取节点操作
二、更新节点操作
三、删除节点操作
课程概述:下面学习 zookeeper 节点的读取、更新和删除操作
一、读取节点
与读取相关的命令有 ls 命令和 get 命令。
ls 命令可以列出 Zookeeper 指定节点下的所有子节点,只能查看指定节点下的第一级的所有子节点: get 命令可以获取 Zookeeper 指定节点的数据内容和属性信息。
ls path [watch]
get path [watch]
ls2 path [watch]
1.ls 命令
#ls 查看节点示例
[zk:localhost:2181(CONNECTED) 10] ls /
运行结果:
[b0000000003,a000000002,zookeeper,hellozk]
#Ls /只能查看当前根目录,若想查看子节点中的节点,需要添加子节点名称
[zk:localhost:2181(CONNECTED) 12] ls /hellozk
运行结果:
[a000000000,a000000001]
2.get 命令
#查看节点中的属性和数据,使用 get 命令
[zk:localhost:2181(CONNECTED) 12] get /hellozk
运行结果:
123
#节点所保存的数据信息
czxid =
0
x200000003
#创建事务id
ctime = Thu jan o4_10:25:o1 cST 2018
#创建的时间
mzxid =
0
x200000003
#修改时的id
mtime = Thu Jan 04 10:25:01 cST 2018
#修改的时间
pzxid =
0
x200000
00
c
cversion = 2
dataversion =
0
ac1version =
0
ephemera1owner =
0
x
0 #非临时节点
dataLength = 3
#数据长度
numchi
l
dren = 2
#当前节点下的节点个数
3. ls2 命令
#ls2 把节点下的属性信息显示,但是保存的信息未显示
[zk:localhost:2181(CONNECTED) 12] ls2 /hellozk
运行结果:
[a00000000,a000000001]
czxid =
0
x200000003
ctime = Thu jan o4_10:25:o1 cST 2018
mzxid =
0
x200000003
mtime = Thu Jan 04 10:25:01 cST 2018
pzxid =
0
x200000
00
c
cversion = 2
dataversion =
0
ac1version =
0
ephemera1owner =
0
x
0
dataLength = 3
numchi
l
dren = 2
二、更新节点
set path data [version]
data 就是要更新的新内容,version 表示数据版本。
[zk: node-22 (CoNNECTED) 5] set /hellozk 123
psetzxid =ox400000007
ctime=Mon sep 2510:47:49csT 2017
mzxid=0×400000009
mtime= Mon sep 25 10:56:13CST 2017
pzxid= 0x400000007
cversion=0
dataversion=1ac7version= 0
ephemera7owner=0x0
dataLength=7
numChi7dren =0
再次查看 dataversion 版本号会自动加一,节点内容也会发生改变,事务 id 也会发生改变
三、删除节点
delete path [version]
若删除节点存在子节点,那么无法删除该节点,必须先删除子节点,再删除父节点。
Rmr path:可以递归删除节点。
示例:
#之间删除有子节点的节点会报错
[zk:localhost:2181(CONNECTED) 22] delete /hellozk
#强制递归删除
[zk:localhost:2181(CONNECTED) 22] rmr /hellozk