`

Zookeeper简介

阅读更多

一、什么是Zookeeper

      ZooKeeper 顾名思义动物园管理员,他是拿来管大象(Hadoop) 、蜜蜂(Hive) 、小猪(Pig)的管理员,Apache Hbase和Apache Solr以及LinkedIn sensei等项目中都采用到了Zookeeper。ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,ZooKeeper是以Fast Paxos算法为基础,实现同步服务,配置维护和命名服务等分布式应用。

      上面的解释感觉太官方了,Zookeeper从程序员的角度来讲可以理解为Hadoop的整体监控系统。如果nameNode、HMaster宕机后,这时候Zookeeper重新选出leader,这是它最大的作用所在。下面详细介绍zookeeper的作用

二、zookeeper的作用

1.Zookeeper加强集群稳定性
       Zookeeper通过一种和文件系统很像的层级命名空间来让分布式进程互相协同工作。这些命名空间由一系列数据寄存器组成,我们也叫这些数据寄存器为znodes。这些znodes就有点像是文件系统中的文件和文件夹。和文件系统不一样的是,文件系统的文件是存储在磁盘上的,而zookeeper的数据是存储在内存上的,这就意味着zookeeper有着高吞吐和低延迟的特点。
       Zookeeper实现了高性能,高可靠性和有序的访问。高性能保证了zookeeper能应用在大型的分布式系统上;高可靠性保证它不会由于单一节点的故障而造成任何问题;有序的访问能保证客户端可以实现较为复杂的同步操作。
2.Zookeeper加强集群持续性
       1)ZooKeeper Service
       组成Zookeeper的各个服务器必须要能相互通信。他们在内存中保存了服务器状态,也保存了操作的日志,并且持久化快照。只要大多数的服务器是可用的,那么Zookeeper就是可用的。
       客户端连接到一个Zookeeper服务器,并且维持TCP连接。并且发送请求,获取回复,获取事件,并且发送连接信号。如果这个TCP连接断掉了,那么客户端可以连接另外一个服务器。
       2)Zookeeper保证集群有序性
       Zookeeper使用数字来对每一个更新进行标记,这样能保证Zookeeper交互的有序。后续的操作可以根据这个顺序实现诸如同步操作这样更高更抽象的服务。
       3)Zookeeper保证集群高效
       Zookeeper的高效更表现在以读为主的系统上。Zookeeper可以在千台服务器组成的读写比例大约为10:1的分布系统上表现优异。
       4)数据结构和分等级的命名空间
       Zookeeper的命名空间的结构和文件系统很像。一个名字和文件一样使用/的路径表现,zookeeper的每个节点都是被路径唯一标识
三、zookeeper在Hadoop及hbase中具体作用
       Hadoop有NameNode,HBase有HMaster,为什么还需要zookeeper,下面给大家通过例子给大家介绍。
一个Zookeeper的集群中,3个Zookeeper节点.一个leader,两个follower的情况下,停掉leader,然后两个follower选举出一个leader.获取的数据不变.我想Zookeeper能够帮助Hadoop做到:

       Hadoop使用Zookeeper的事件处理确保整个集群只有一个NameNode,存储配置信息等.
       HBase使用Zookeeper的事件处理确保整个集群只有一个HMaster,察觉HRegionServer联机和宕机,存储访问控制列表等.

0
0
分享到:
评论

相关推荐

    ZooKeeper简介和概念知识

    ZooKeeper简介和概念知识 ZooKeeper是分布式协调服务,用于管理大型主机。在分布式环境中协调和管理服务是一个复杂的过程。ZooKeeper通过其简单的架构和API解决了这个问题。ZooKeeper允许开发人员专注于核心应用...

    细细品味Hadoop_第16期_ZooKeeper简介及安装_V1.2

    ZooKeeper是一个开源的分布式协调服务,它是为了解决分布式应用中的诸多问题而设计的,比如同步、配置管理、命名空间、分布式锁、集群管理等。ZooKeeper的设计目标是简单、健壮和良好的性能。它通过一个共享的配置...

    zookeeper简介(3)共2页.pdf.zip

    **Zookeeper简介(3)共2页.pdf** Apache ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终将简单易用的接口...

    zookeeper简介(1)共3页.pdf.zip

    **Zookeeper简介** Zookeeper是Apache软件基金会的一个开源项目,它是分布式应用程序协调服务的基石,设计用于处理大量的分布式系统的同步问题。Zookeeper提供了一个高可用、高性能、简单易用的分布式协调服务,...

    zookeeper简介

    ### Zookeeper简介 #### 1. Zookeeper概述 Zookeeper是一种专门为分布式应用提供协调服务的解决方案。随着现代软件系统的不断发展,越来越多的应用程序被部署在由多台服务器组成的集群上。这些应用程序之间的通信...

    Zookeeper简介及核心概念

    Zookeeper简介及核心概念

    1 ZooKeeper 简介.md

    1 ZooKeeper 简介.md

    Zookeeper 简介 搭建

    **Zookeeper 简介与搭建** Zookeeper 是一个分布式协调服务,由雅虎和 Apache 软件基金会共同开发,是 Hadoop 生态系统中的重要组成部分。它提供了一种集中式的服务,用于命名、配置管理、分布式同步、组服务等,常...

    Zookeeper简介及核心概念.zip

    Zookeeper是Apache软件基金会的一个开源项目,它是一个分布式的,开放源码的分布式应用程序协调服务。这个服务提供了可靠的分布式协调机制,使得分布式系统的开发变得更加简单。Zookeeper的主要目标是简化分布式环境...

    zookeeper简介与安装步骤

    zookeeper的介绍和安装步骤,可供初学者了解zookeeper,还有安装步骤

    ZooKeeper入门简介及配置使用PDF

    ZooKeeper系列之一:ZooKeeper简介 ZooKeeper是一个为分布式应用所设计的分布的、开源的协调服务。分布式的应用可以建立在同步、配置管理、分组和命名等服务的更高级别的实现的基础之上。 ZooKeeper意欲设计一个易于...

    zookeeper3.4.5.rar

    一、Zookeeper简介 Zookeeper源于雅虎的研究项目,后来成为Apache Hadoop的一部分。它的设计目标是为分布式应用提供简单、高效和高度可用的服务,包括命名服务、配置管理、组服务、分布式同步和领导选举等。...

    Linux下Zookeeper集群的安装

    ##### Zookeeper简介 Zookeeper是一款开源的分布式协调服务组件,属于Apache顶级项目之一。它主要用于简化分布式应用程序的开发过程,为开发者提供了高效且可靠的分布式协调机制。 在实际应用场景中,Zookeeper经常...

    CentOS7.0安装zookeeper

    #### 一、Zookeeper简介 Zookeeper 是一个分布式的协调服务框架,它提供了一种高效、可靠的机制来维护集群中的分布式进程之间的协调工作,比如命名服务、配置管理、集群同步等。在分布式系统中,Zookeeper 被广泛...

    zookeeper3.5.1.rar

    一、Zookeeper简介 Zookeeper的设计理念源于Chubby,主要解决分布式环境中的数据一致性问题。它采用树状结构存储数据,每个节点都可以存储数据并提供服务。Zookeeper的主要角色包括:客户端、服务器节点(ZNode)和...

    尚硅谷大数据之Zookeeper视频

    ### Zookeeper简介 Zookeeper是Apache软件基金会的一个顶级项目,它提供了一个高性能且可靠的分布式协调服务框架。在分布式系统中,Zookeeper被广泛用于解决各种常见的分布式一致性问题,如命名服务、配置管理、...

    zookeeper-3.4.6.rar

    一、Zookeeper简介 Zookeeper起源于雅虎研究部门的一个项目,后来成为Apache软件基金会的顶级项目。它提供了一种简单易用的接口,使得分布式应用能够管理和同步数据,实现服务发现、配置管理、命名服务等多种功能。...

    zookeeper-3.4.11.zip

    一、Zookeeper简介 Zookeeper由Apache基金会开发,基于Java实现,设计灵感来源于Paxos算法。它提供了一种分布式一致性服务,确保在大规模分布式环境下的数据一致性。Zookeeper采用客户端/服务器模式,由多个节点...

Global site tag (gtag.js) - Google Analytics