3 zookeeper 基本数据模型

1 zk数据模型介绍

  1. 是一个树形结构,类似于前端开发中的tree.js组件
  2. zk的数据模型也可以理解为linux/unix的文件目录:/usr/local/...
  3. 每一个节点都称之为znode,它可以有子节点,也可以有数据
  4. 每个节点分为临时节点和永久节点,临时节点在客户端断开后消失
  5. 每个zk节点都有各自的版本号,可以通过命令行来显示节点信息
  6. 每当节点数据发生变化,那么该节点的版本号会累加(乐观锁)
  7. 删除/修改过时节点,版本号不匹配则会报错
  8. 每个zk节点存储的数据不宜过大,几K即可
  9. 节点可以设置权限acl,可以通过权限来限制用户的访问

2 zk客户端连接关闭服务端,查看znode

Zookeeper数据模型基本操作:

客户端连接:

1 启动zk服务器端:./zkServer.sh start

2 启动zk客户端:./zkCli.sh   回车:

[zk: localhost:2181(CONNECTED) 0]  //这里代表已经连上了localhost(本机)  端口号为:2181, CONNECTED 代表状态是 连接状态

3 查看znode结构

help查看zkCli.sh所有的命令

ls 查看节点

4 关闭客户端连接  :ctrl+c

3 zookeeper的作用体现

  1. master节点选举,主节点挂了之后,从节点就会接受工作,并且保证这个节点是唯一的,这就是所谓的首脑模式,从而保证我们的集群是高可用的
  2. 统一配置文件管理,既只需要部署一台服务器,则可以把相同的配置文件同步更新到其他所有服务器,此操作在云计算用的特别多(例如:假设修改了redis统一配置)
  3. 发布与订阅,类似消息队列MQ(amq,rmq...),dubbo发布者把数据存在znode上,订阅者会读取这个数据(发布者发布数据,订阅者读取数据,这就是发布订阅模式。)
  4. 提供了分布式锁,分布式环境中不同进程之间争夺资源,类似于多线程中的锁
  5. 集群管理,集群中保证数据的强一致性

根据慕课网风间影月老师的课程整理的笔记

原文地址:https://www.cnblogs.com/Torey/p/10257089.html

时间: 2024-10-17 02:42:18

3 zookeeper 基本数据模型的相关文章

ZooKeeper的数据模型

ZooKeeper的数据模型 ZooKeeper提供的命名空间与标准的文件系统的命名空间非常类似:名称是由斜杠(/)分隔的一系列路径元素:ZooKeeper命名空间中的每个节点都由路径标识,如下图: ZooKeeper命名空间中的每个节点都可以具有与其关联的数据以及子节点.就像拥有一个文件系统一样,该文件系统也允许文件成为目录(ZooKeeper中的每个节点会存储一些自身的数据:状态信息,配置,位置信息等,因此存储在每个节点上的数据通常很小,在字节到千字节范围内): 在ZooKeeper树形结构

Zookeeper概述、特点、数据模型

Zookeeper 1.Zookeeper概述 Zookeeper是一个工具,可以实现集群中的分布式协调服务. 所谓的分布式协调服务,就是在集群的节点中进行可靠的消息传递,来协调集群的工作. Zookeeper之所以能够实现分布式协调服务,靠的就是它能够保证分布式数据一致性. 所谓的分布式数据一致性,指的就是可以在集群中保证数据传递的一致性. Zookeeper能够提供的分布式协调服务包括:数据发布订阅.负载均衡.命名服务.分布式协调/通知.集群管理.分布式锁.分布式队列等功能 2.Zookee

ZooKeeper 数据模型

ZooKeeper是一种为分布式应用所设计的高可用.高性能且一致的开源协调服务,它提供了一项基本服务:分布式锁服务.由于ZooKeeper的开源特性,后来我们的开发者在分布式锁的基础上,摸索了出了其他的使用方法:配置维护.组服务.分布式消息队列.分布式通知/协调等. 注意:ZooKeeper性能上的特点决定了它能够用在大型的.分布式的系统当中.从可靠性方面来说,它并不会因为一个节点的错误而崩溃.除此之外,它严格的序列访问控制意味着复杂的控制原语可以应用在客户端上.ZooKeeper在一致性.可用

zookeeper系列之九—zookeeper数据模型

http://nileader.blog.51cto.com/1381108/946788 本文主要讲述了Zookeeper的数据模型,包括Zookeeper的数据视图,节点的层次结构以及节点类型等基本属性. Zookeeper的视图结构类似标准的Unix文件系统,但是没有引入文件系统相关概念:目录和文件,而是使用了自己特有的节点(node)概念,称为znode.Znode是Zookeeper中数据的最小单元,每个znode上都可以保存数据,同时还可以挂在子节点,也构成了一个层次化的命名空间,我

浅谈分布式服务协调技术 Zookeeper

Google的三篇论文影响了很多很多人,也影响了很多很多系统.这三篇论文一直是分布式领域传阅的经典.根据MapReduce,于是我们有了Hadoop:根据GFS,于是我们有了HDFS:根据BigTable,于是我们有了HBase.而在这三篇论文里都提及Google的一个Lock Service -- Chubby,哦,于是我们有了Zookeeper. 随着大数据的火热,Hxx们已经变得耳熟能详,现在作为一个开发人员如果都不知道这几个名词出门都好像不好意思跟人打招呼.但实际上对我们这些非大数据开发

ZooKeeper架构设计及其应用要点

ZooKeeper是一个开源的分布式服务框架,它是Apache Hadoop项目的一个子项目,主要用来解决分布式应用场景中存在的一些问题,如:统一命名服务.状态同步服务.集群管理.分布式应用配置管理等,它支持Standalone模式和分布式模式,在分布式模式下,能够为分布式应用提供高性能和可靠地协调服务,而且使用ZooKeeper可以大大简化分布式协调服务的实现,为开发分布式应用极大地降低了成本. 总体架构 ZooKeeper分布式协调服务框架的总体架构,如图所示: ZooKeeper集群由一组

Zookeeper简单介绍

转自:ZooKeeper学习第一期---Zookeeper简单介绍 一.分布式协调技术 在给大家介绍ZooKeeper之前先来给大家介绍一种技术--分布式协调技术.那么什么是分布式协调技术?那么我来告诉大家,其实分布式协调技术 主要用来解决分布式环境当中多个进程之间的同步控制,让他们有序的去访问某种临界资源,防止造成"脏数据"的后果.这时,有人可能会说这个简单,写一个调 度算法就轻松解决了.说这句话的人,可能对分布式系统不是很了解,所以才会出现这种误解.如果这些进程全部是跑在一台机上的

【转载】zookeeper使用和原理探究(一)

最近开始看到一些公司在使用zookeeper,本身对此了解的很少,这里看到一篇非常好的文章,因此转载 原贴地址:http://www.blogjava.net/BucketLi/archive/2010/12/21/341268.html zookeeper介绍zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的Hadoop项目中的一个子项目,并且根据google发表的<The Chubby lock service for loosely-coupled distributed

ZooKeeper入门

ZooKeeper简介 ZooKeeper是一个构建在Paxos算法上的高可用的分布式数据管理与系统协调框架,提供了一系列原语集,更上层的应用可以用它来实现同步,配置管理,名称服务,Master选举,分布式锁,分布式队列等. ZooKeeper提供如下服务保证 顺序一致性: client的updates请求都会根据它发出的顺序被顺序的处理 原子性: 一个update操作要么成功要么失败,没有其他可能的结果 一致性的镜像: client不论连接到哪个server,展示给它都是同一个视图 可靠性: