命运给予的,无论多少,皆需认真对待。----------------------------------朗如日月,清如水镜

Zookeeper之入门(原理、基础知识)

Zookeeper介绍

Zookeeper是分布式应用程序的协调服务框架,是Hadoop的重要组件。ZK要解决的问题:

1.分布式环境下的数据一致性。

2.分布式环境下的统一命名服务

3.分布式环境下的配置管理

4.分布式环境下的分布式锁

5.集群管理问题

 Zookeeper指令与数据结构

Zk数据结构

1.       ZK有一个最开始的节点

2.       ZK的节点叫做znode节点

3.       每个znode节点都可存储数据

4.       每个znode节点都可创建自己的子节点

5.       多个znode节点共同形成了znode

6.       Znode树的维系实在内存中,目的是供用户快速的查询

7.       每个znode节点都是一个路径(通过路径来定位这个节点)

8.       每个路径名都是唯一的。

 

ZK指令

指令

示例

ls查看指令

ls /

create创建节点指令,注意,在创建节点时,要分配初始数据。

create /zk01

 hello

create /zk02 ‘’

get查看节点数据指令

hello  数据

cZxid = 0x2

ctime = Mon May 15 05:58:32 PDT 2017创建节点的时间戳

mZxid = 0x2

mtime = Mon May 15 05:58:32 PDT 2017修改此节点数据的最新时间戳

pZxid = 0x2

cversion = 0

dataVersion = 0数据版本号,每当数据发生编号,版本号递增1

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 5数据大小

numChildren = 0子节点个数

get /zk01

set更新节点数据指令(执行后mtimedataVersion可定会放生变化,dataLength可能会变化)

set /zk01 hellozk

delete删除节点

delete /zk01

create指令补充:

1.       创建子节点

2.       Zk节点分四种类型:分别是:

普通持久节点:

普通临时节点:创建此临时节点的客户端失去和zk连接后,此节点消失.zk是通过临时节点监控哪个服务器挂掉的。

 

顺序持久节点:会根据用户指定的节点路径,自动分配一个递增的顺序号。(顺序节点实现分布式锁的效果,服务器1抢到zk05分配zk050001,服务器2抢到zk05分配zk050002

顺序临时节点:

1.       create /zk01/node01 hello

2.        

2.1create /zk01 hello

2.2. create –e /zk02 abc
2.3.create –s /zk03 abc

2.4.create –s -e /zk05 abcd

zk050000000003

再创建一个就是:

zk050000000004

posted on 2018-09-13 22:54  夕橘子  阅读(264)  评论(0编辑  收藏  举报

导航