2018-07-13:02-zookeeper认识数据模型
2018-07-13 本文已影响0人
cjxz
zookeeper是一个类似文件夹系统的数据结构。每一个节点称为znode。有名字有数据,znode下面又可以继续添加字节点。zookeeper节点类型有四种:
PERSISTENT 持久化节点
PERSISTENT_SEQUENTIAL 顺序自动编号持久化节点,这种节点会根据当前已存在的节点数自动加 1
EPHEMERAL 临时节点, 客户端session超时这类节点就会被自动删除
EPHEMERAL_SEQUENTIAL 临时自动编号节点
下面来熟悉一下常用的命令
[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 12] help
ZooKeeper -server host:port cmd args
stat path [watch] #查看节点状态
set path data [version] #为节点重新赋值
ls path [watch] #列出节点下的所有节点
delquota [-n|-b] path
ls2 path [watch] #列出节点下的所有节点并输出当前节点的状态
setAcl path acl
setquota -n|-b val path
history #查看历史使用过的命令
redo cmdno
printwatches on|off
delete path [version] #删除节点,必须没有子节点
sync path
listquota path
rmr path
get path [watch]
create [-s] [-e] path data acl #创建节点,-s是序列节点,-e节点是临时节点
addauth scheme auth
quit
getAcl path
close
connect host:port
创建节点
#创建持久化节点
create /node1 hhh
#创建序列持久化节点
create -s /node1 abc
#创建序列持久化节点,节点名相同,但是会在序列号上+1
create -s /node1 123
#列出节点
[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 28] ls /
[zookeeper, node10000000003, node1, node10000000002]
获得节点
[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 29] get /node1
hhh
cZxid = 0x200000008
ctime = Fri Jul 13 19:26:48 CST 2018
mZxid = 0x200000008
mtime = Fri Jul 13 19:26:48 CST 2018
pZxid = 0x200000008
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 0
创建临时节点
[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 2] create -e /node2 111
Created /node2
如果当前客户端和服务器断开链接,在开启一个客户端那么这个node2就会被删除,但是不是立刻就删除,有个时间端来同步所有节点