下面内容主要摘抄于<<Hadoop实战>>,红色高亮部分是本人添加的白话注释.
Zookeeper 是一种高性能、可扩展的服务。 Zookeeper 的读写速度非常快,并且读的速度要比写的速度更快。另外,在进行读操作的时候, ZooKeeper 依然能够为旧的数据提供服务。这些都是由于 ZooKeepe 所提供的一致性保证,它具有如下特点:
【Zookeeper提供的一致性是弱一致性,首先数据的复制有如下规则:zookeeper确保对znode树的每一个修改都会被复制到集合体中超过半数的机器上。那么就有可能有节点的数据不是最新的而被客户端访问到。并且会有一个时间点,在集群中是不一致的.
也就是Zookeeper只保证最终一致性, 但是实时的一致性可以由客户端调用自己来保证,通过调用sync()方法.
】
顺序一致性
客户端的更新顺序与它们被发送的顺序相一致。
原子性
更新操作要么成功要么失败,没有第三种结果。
单系统镜像
无论客户端连接到哪一个服务器,客户端将看到相同的 ZooKeeper 视图。
【如果数据不一致,怎么能够保证看到相同的视图? 插入/删除/修改都会对数据结构有影响】
可靠性
一旦一个更新操作被应用,那么在客户端再次更新它之前,它的值将不会改变。。这个保证将会产生下面两种结果:
1 .如果客户端成功地获得了正确的返回代码,那么说明更新已经成果。如果不能够获得返回代码(由于通信错误、超时等等),那么客户端将不知道更新操作是否生效。
2 .当从故障恢复的时候,任何客户端能够看到的执行成功的更新操作将不会被回滚。
实时性
在特定的一段时间内,客户端看到的系统需要被保证是实时的(在十几秒的时间里)。在此时间段内,任何系统的改变将被客户端看到,或者被客户端侦测到。
【伪实时性,太让人误解了,直白点说就是数据可以在十几秒Sync到各个节点,保证最终一致性. 我第一时间看到这个实时性的时候,我就好奇,Oracle RAC花了老鼻子劲才保证了实时性和一致性,Zookeeper是如何轻松做到的,原来是个假的,还说的那么让人误会. 】
给予这些一致性保证, ZooKeeper 更高级功能的设计与实现将会变得非常容易,例如: leader 选举、队列以及可撤销锁等机制的实现。
【
用分布式系统的CAP原则来分析Zookeeper.
1)C: Zookeeper保证了最终一致性,在十几秒可以Sync到各个节点.
2)A: Zookeeper保证了可用性,数据总是可用的,没有锁.并且有一大半的节点所拥有的数据是最新的,实时的. 如果想保证取得是数据一定是最新的,需要手工调用Sync()
3)P: 有2点需要分析的.
节点多了会导致写数据延时非常大,因为需要多个节点同步.
节点多了Leader选举非常耗时, 就会放大网络的问题. 可以通过引入observer节点缓解这个问题.
】
http://www.cnblogs.com/lpshou/archive/2013/06/14/3136904.html
http://www.cnblogs.com/wenfeng762/archive/2011/11/13/2247576.html
相关推荐
大数据与云计算教程课件 优质大数据课程 23.Zookeeper服务(共47页).pptx 大数据与云计算教程课件 优质大数据课程 24.使用Zookeeper构建应用(共34页).pptx 大数据与云计算教程课件 优质大数据课程 25.Sqoop(共19...
1.Zookeeper安装和常用命令练习 问题 依次完成以下4个小题的任务: 1) 安装3个节点的Zookeeper分布式环境 2) 通过命令行工具添加一个znode节点 3) 通过命令行工具查看这个znode节点 4) 通过命令行工具删除这个...
大数据与云计算教程课件 优质大数据课程 23.Zookeeper服务(共47页).pptx 大数据与云计算教程课件 优质大数据课程 24.使用Zookeeper构建应用(共34页).pptx 大数据与云计算教程课件 优质大数据课程 25.Sqoop(共19...
徐老师大数据-001.ZooKeeper简介.mp4、徐老师大数据-002.ZooKeeper下载与安装.mp4、徐老师大数据-003.ZooKeeper分布式集群配制与Leader宕机测试.mp4、徐老师大数据-004.ZooKeeper分布式集群配制与nc Linux命令的网络...
1. 简述zookeeper在HBase中的作用 2. 如何获取链接zookeeper的客户端的信息 3. 简述如何用zookeeper实现一个普通的一对多fifo队列 4. 使用伪代码简述mapreduce的流程和中间结果 其中input和output都是...
1 Zookeeper分布式安装、开发 1.1 Zookeeper分布式安装 1.1.1 Zookeeper概述 Zookeeper概述 什么是Zookeeper --Zookeeper是Google的Chubby一个开源的实现,是Hadoop的分布式协调服务 --它包含一个简单的原语集,...
2、 给出自己集群进行SSH免密配置的关键程序代码,并截图证明集群各节点之间免密成功,3.3、 给出自己集群的HDFS部署过程 5.5、 将/root/data/8/目录下的所有文件上传到上题创建的目录中,并列出该目录下所有内容,...
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop...它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
从Paxos到Zookeeper分布式一致性原理与实践.pdf从Paxos到Zookeeper分布式一致性原理与实践.pdf从Paxos到Zookeeper分布式一致性原理与实践.pdf从Paxos到Zookeeper分布式一致性原理与实践.pdf从Paxos到Zookeeper分布式...
从Paxos到Zookeeper分布式一致性原理与实践 + ZooKeeper-分布式过程协同技术详解
华为大数据认证,协调服务组件Zookeeper
5 大数据基础 - Zookeeper
尚硅谷大数据技术之zookeeper,包含教程ppt,只是思维图以及操作说明
1.官网首页: 2.下载截图,如图 5-5,5-6,5-7 所示 1.安装前准备 2.配置修改 3.操作 Zookeeper 1.tickTime =2000:
从PAXOS到ZOOKEEPER分布式一致性原理与实践从PAXOS到ZOOKEEPER分布式一致性原理与实践从PAXOS到ZOOKEEPER分布式一致性原理与实践
大数据技术基础实验报告-Zookeeper的安装配置和应用实践
《Paxos到Zookeeper:分布式一致性原理与实践》从分布式一致性的理论出发,向读者简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了Paxos和ZAB协议。同时,本书深入介绍了分布式...
从Paxos到Zookeeper分布式一致性原理与实践包括源码推荐给需要学习的童鞋
大数据教程-zookeeper安装与配置,详细细节安装、部署