2018-07-13:02-zookeeper认识数据模型

本文详细介绍了ZooKeeper的数据结构及节点类型,包括持久化、临时、顺序节点等,并提供了常用命令示例,如创建、获取、删除节点,以及如何通过特定参数实现不同类型的节点创建。

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就会被删除,但是不是立刻就删除,有个时间端来同步所有节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值