Zookeeper介绍(28)

原创
2014/03/23 22:46
阅读数 174

            Zookeeper是保证数据在ZK集群中传递时事务一致性的.

            Zookeeper是含有一个文件系统,类似于Linux的文件系统。每一集目录结果都可以写数据。

            Zookeeper作为Hadoop项目中的一个子项目,是Hadoop集群管理的一个必不可少的模块,它主要来控制集群中的数据,如它管理Hadoop集群中的NameNode,还有Hbase中Master Election、Server之间状态同步等。

            Zookeeper作用:

                            Zookeeper加强集群稳定性:

                                        Zookeeper通过一种和文件系统很像的层级命名空间来让分布式进程互相协同共。这些命名空间由

                                        一系列数据寄存器组成,我们也叫这些数据寄存器为Znodes。这些Znodes就有点像是文件系统

                                        中的文件和文件夹。和文件系统不一样的是,文件系统的文件时存储在存储区上的,而Zookeepe

                                        r的数据是存储在内存上的。同时,这就意味着Zookeeper有着高吞吐和低延迟。

                                        Zookeeper实现了高性能,高可靠性,和有序的访问。高性能保证了Zookeeper能应用在大型的

                                        分布式系统上。高可靠性保证它不会由于单一节点的故障而造成任何问题,有序的访问能保证客

                                        户单可以实现较为复杂的同步操作.                           
                           Zookeeper加强集群持续性:

                                        







                                          组成Zookeeper的各个服务器必须要能相互通信,他们在内存中保存了服务器状态,也保存了

                                          操作的日志,并且持久化快照,只要大多数的服务器是可用的,那么Zookeeper就是可用的,

                                          客户端连接到一个Zookeeper服务器,并且维持TCP连接,并且发送请求,获取回复,获取事件

                                          并且发送连接信号。如果这个TCP连接断掉了,那么客户端可以连接另外一个服务器。

                        Zookeeper保证集群有序性:

                                          Zookeeper使用数字来对每一个更新进行标记,这样能保证Zookeeper交互的有序,后续的操作

                                          可以根据这个顺序是先诸如同步操作这样更高更抽象的服务。

                        Zookeeper保证集群高效:

                                          Zookeeper的高效更表现在以读为主的系统上,Zookeeper可以在千台服务器组成的读写比例

                                          大约为10:1的分布式系统上表现优异。

                        数据结构和分等级的命名空间:

                                          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

                                                        联机和宕机,存储访问控制列表等。


                                                                                                                                Name:Xr

                                                                                                                                Date:2014-03-23 22:46

展开阅读全文
打赏
0
7 收藏
分享
加载中
更多评论
打赏
0 评论
7 收藏
0
分享
返回顶部
顶部