Zookeeper 数据模型|学习笔记

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 快速学习 Zookeeper 数据模型

开发者学堂课程【大数据 ZooKeeper 快速入门  Zookeeper 数据模型】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/549/detail/7587


Zookeeper 数据模型

 

目录:

一、Zookeeper 数据模型概述

二、Zookeeper 节点不同之处

三、数据结构

 

下面来了解以下 zookeeper 的数据模型

 

一、Zookeeper 数据模型介绍

ZooKeeper 的数据模型,在结构上和标准文件系统的非常相似,拥有一个层次的命名空间,都是采用树形层次结构,ZooKeeper 树中的每个节点被称为一 Znode。和文件系统的目录树一样,ZooKeeper 树中的每个节点可以拥有子节点。

 

二、zookeeper节点不同之处

1. Znode 兼具文件和目录两种特点。

作文文件保存数据,作为目录可以作为路径标识,既像文件一样维护着数据、元信息、ACL、时间戳等数据结构,又像目录一样可以作为路径标识的一部分,并可以具有子Znode。用户对Znode具有增、删、改、查等操作(权限允许的情况下)。

2. Znode 具有原子性操作

原子性操作要么成功要么失败,不可能存在中间状态,读操作将获取与节点相关的所有数据,写操作也将替换掉节点的所有数据。另外,每一个节点都拥有自己的 ACL(访问控制列表),这个列表规定了用户的权限,即限定了特定用户对目标节点可以执行的操作。

3. Znode 存储数据大小有限制。

ZooKeeper 虽然可以关联一些数据,但并没有被设计为常规的数据库或者大数据存储,相反的是,它用来管理调度数据,比如分布式应用中的配置文件信息、状态信息、汇集位置等等。这些数据的共同特性就是它们都是很小的数据,通常以 KB 为大小单位。ZooKeeper 的服务器和客户端都被设计为严格检查并限制每个 Znode 的数据大小至多 1M,当时常规使用中应该远小于此值。

4. Znode 通过路径引用,如同 Unix 中的文件路径。

路径必须是绝对的,因此他们必须由斜杠字符来开头。除此以外,他们必须是唯一的,也就是说每一个路径只有一个表示,因此这些路径不能改变。在 ZooKeeper中,路径由 Unicode 字符串组成,并且有一些限制。字符串"/zookeeper"用以保存管理信息,比如关键配额信息。

 

三、数据结构

image.png

从根目录开始,可以创建子文件夹,文件夹下面可以创建子节点

和标准的文件系统相似,形成庞大的文件。

图中的每个节点称为一个 Znode。每个 Znode 由3部分组成:

stat:此为状态信息,描述该 Znode 的版本,权限等信息

data:与该 Znode 关联的数据

children:该 Znode 下的子节点

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
9月前
|
存储
Zookeeper 数据模型和节点特性
Zookeeper 数据模型和节点特性
43 0
|
10月前
|
监控 Dubbo 网络协议
【SpringBoot学习笔记 十四】SpringBoot+Dubbo+Zookeeper集成开发(下)
【SpringBoot学习笔记 十四】SpringBoot+Dubbo+Zookeeper集成开发(下)
157 0
|
10月前
|
消息中间件 监控 Dubbo
【SpringBoot学习笔记 十四】SpringBoot+Dubbo+Zookeeper集成开发
【SpringBoot学习笔记 十四】SpringBoot+Dubbo+Zookeeper集成开发
121 0
|
11月前
|
存储 监控 Apache
Apache ZooKeeper - ZooKeeper 数据模型回顾
Apache ZooKeeper - ZooKeeper 数据模型回顾
71 0
|
缓存 监控 网络协议
MSE 风险分布管理功能发布(二)| 学习笔记
快速学习 MSE 风险分布管理功能发布。
185 0
MSE 风险分布管理功能发布(二)| 学习笔记
|
存储 消息中间件 负载均衡
Zookeeper系列(一)——Zookeeper基础之数据模型
Zookeeper系列(一)——Zookeeper基础之数据模型
153 0
Zookeeper系列(一)——Zookeeper基础之数据模型
|
Java Linux API
|
API 数据安全/隐私保护
|
存储 负载均衡 Java
|
数据可视化 Dubbo Java
MSE 微服务测试---自动化回归最佳实践|学习笔记
快速学习 MSE 微服务测试---自动化回归最佳实践
294 0
MSE 微服务测试---自动化回归最佳实践|学习笔记