前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Zookeeper系统模型之znode节点类型和客户端命令行

Zookeeper系统模型之znode节点类型和客户端命令行

原创
作者头像
会洗碗的CV工程师
发布2024-05-12 22:14:33
2550
发布2024-05-12 22:14:33
举报
文章被收录于专栏:Zookeeper

数据模型

在Zookeeper中,可以说 Zookeeper中的所有存储的数据是由znode组成的,节点也称为 znode,并以 key/value 形式存储数

据。

介绍:

整体结构类似于 linux 文件系统的模式以树形结构存储。其中根路径以 / 开头。

保存数据

注意:

以 key/value 形式存储数据。key就是znode的节点路径,比如/java , /server。

znode节点类型

znode节点类型一般分为持久节点,临时节点,有序节点等三方面。

ZooKeeper 节点是有生命周期的,这取决于节点的类型。节点类型可以分为持久节点、临时节点,以及时序节点,具体在节点创建过程中,一般是组合使用,可以生成以下 4 种节点类型。

持久节点

持久节点是zookeeper中最常见的一种节点类型。所谓持久节点,是指改数据节点被创建后,就会一直存在与zookeeper服务器上,直到有删除操作来主动清除这个节点。

持久顺序节点

这类节点的基本特性和上面的节点类型是一致的。额外的特性是,在ZK中,每个父节点会为他的第一级子节点维护一份时序,会记录每个子节点创建的先后顺序。

临时节点

从名称上可以看出该节点的一个最重要的特性就是临时性。

所谓临时性是指,如果将节点创建为临时节点,那么该节点数据不会一直存储在 ZooKeeper 服务器上。

区别:

和持久节点不同的是,临时节点的生命周期和客户端会话绑定。也就是说,如果客户端会话失效,那么这个节点就会自动被清除掉。注意,这里提到的是会话失效,而非连接断开。另外,在临时节点下面不能创建子节点。

临时顺序节点

临时顺序节点的基本特性和临时节点是一致的,同样是在临时节点的基础上,添加了顺序的特性。

代码语言:bash
复制
/lyl00000000000002  lyl
/lyl00000000000003  lyl

客户端命令行

创建

创建ZK节点

语法结构:

代码语言:bash
复制
create [-s] [-e] path data acl

参数:

-s:顺序节点

-e:临时节点

默认情况下,不添加-s或者-e参数的,创建的是持久节点。

代码语言:bash
复制
[zk: localhost:2181(CONNECTED) 0]create /zk-book lyl

读取

读取节点信息ls命令和set命令。

ls命令

语法结构:

ls path [watch]

示例:

ls /

注意:

第一次部署的ZooKeeper集群,默认在根节点“1”下面有一个叫作/zookeeper的保留节点。

get命令

使用get命令,可以获取zookeeper指定节点的数据内容和属性信息。

语法格式:

代码语言:bash
复制
get path [watch]

示例:

代码语言:bash
复制
get /zk-book

更新

使用set命令,可以更新指定节点的数据内容。

语法结构:

代码语言:bash
复制
set path data [version]

参数:

data就是要更新的新内容。注意,set命令后面还有一个version参数,在ZooKeeper 中,节点的数据是有版本概念的,这个参

数用于指定本次更新操作是基于ZNode的哪一个数据版本进行的。

删除

删除zookeeper上的指定节点。

语法结构:

代码语言:bash
复制
delete path [version]

示例:

代码语言:bash
复制
create /zk-book 123
create /zk-book/child 12345
delete /zk-book

参数:

如果节点包含子节点就报错。

我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据模型
  • znode节点类型
    • 持久节点
      • 持久顺序节点
        • 临时节点
          • 临时顺序节点
          • 客户端命令行
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档