一、单选
1、Zookeeper 对节点的 watch 监听通知是永久的吗==( B )==
A、是
B、不是
一个watch事件是一个一次性的触发器,当被设置了watch的数据发生了改变的时候,服务器会讲这个改变发送给客户端。如果是永久监听,那么数据的频繁变动会使得服务器压力变大。
2、Zookeeper在 config 命名空间下,每个znode最多能存储==( A )==数据
A、1M
B、16M
C、512K
D、64K
ZooKeeper数据模型中的每个znode都维护着一个 stat 结构。一个stat仅提供一个znode的元数据。它由版本号,操作控制列表(ACL),时间戳和数据长度组成。
版本号 - 每个znode都有版本号,这意味着每当与znode相关联的数据发生变化时,其对应的版本号也会增加。当多个zookeeper客户端尝试在同一znode上执行操作时,版本号的使用就很重要。
操作控制列表(ACL) - ACL基本上是访问znode的认证机制。它管理所有znode读取和写入操作。
时间戳 - 时间戳表示创建和修改znode所经过的时间。它通常以毫秒为单位。ZooKeeper从“事务ID"(zxid)标识znode的每个更改。Zxid 是唯一的,并且为每个事务保留时间,以便你可以轻松地确定从一个请求到另一个请求所经过的时间。
数据长度 - 存储在znode中的数据总量是数据长度。你最多可以存储1MB的数据。
3、zookeeper 有很多版本,( ) 版本是原始版本,( ) 版本是对原始版本的增强。( B )
a、cdh
b、apache
1
2
A、ab
B、ba
apache版本是最原始的版本,所有发行版均基于这个版本进行改进。
cdh版本对apache版进行增强,对版本划分更加明确,对兼容行、安全性、稳定性上有增强。
apache版本是最原始的版本,所有发行版均基于这个版本进行改进。
cdh版本对apache版进行增强,对版本划分更加明确,对兼容行、安全性、稳定性上有增强。
我们常用cdh版。
4、在安装 cdh 提供的软件的时候,我们应该关注哪一部分,下图给出了一款软件,名字是 crunch ,这款软件我们没有学过,但是我们通过对 cdh 的了解,可以知道,我们应该关注的版本号是哪部分 ( B )
crunch-0.11.0-cdh5.14.0-changes.log
crunch-0.11.0-cdh5.14.0-package-changes
crunch-0.11.0-cdh5.14.0-package-since-las
crunch-0.11.0-cdh5.14.0-src.tar.gz
crunch-0.11.0-cdh5.14.0.CHANGES.txt
crunch-0.11.0-cdh5.14.0.package.CHANGE
crunch-0.11.0-cdh5.14.0.package.since.last
crunch-0.11.0-cdh5.14.0.releasenotes.html
crunch-0.11.0-cdh5.14.0.tar.qz
A、crunch-0.11.0
B、cdh5.14.0
C、src.tar.gz
D、changes.log
二、多选
1、ZooKeeper 提供了什么==( AB )==
A、文件系统
B、通知机制
ZooKeeper拥有一个层次的命名空间,这个和分布式的文件系统非常相似。不同的是ZooKeeper命名空间中的Znode,兼具文件和目录两种特点。既像文件一样维护着数据、元信息、ACL、时间戳等数据结构,又像目录一样可以作为路径标识的一部分,并可以具有子znode。用户对znode具有增、删、改、查等操作(权限允许的情况下)。
2、Zookeeper 都有哪些功能 ( ABCD )
A、集群管理
B、主节点选举
C、分布式锁
D、命名服务
zookeeper提供的服务主要有以下几点:
1.统一命名服务:
在分布式环境下,经常需要对应用/服务进行统一命名,便于识别
2.统一配置管理
(1)分布式环境下,配置文件同步非常常见
a.一般要求一个集群中,所有节点的配置信息是一致的,比如Kafka集群
b.对配置文件修改后,希望能够快速同步到各个节点上
(2)配置管理可以交由zookeeper实现
a.可将配置信息写入zookeeper上的一个Znode
b.各个客户端服务器监听这个Znode
c.一旦Znode中的数据被修改,Zookeeper将通知各个客户端服务器
3.统一集群管理
(1)分布式环境中,实时掌握每个节点的状态是必要的
a.可根据节点实时状态做出一些调整
(2)Zookeeper可以实现实时监控节点状态变化
a.可将节点信息写入Zookeeper上的一个Znode
b.监听这个Znode可获取它的实时状态变化
4.服务器节点动态上下线
客户端实时洞察到服务器上下线的变化
5.软负载均衡
在Zookeeper中记录每台服务器的访问数,让访问数最少的服务器处理最新的客户端请求
3、zookeeper 常用的命令有哪些==( ABCD )==
A、delete
B、get
C、set
D、create
delete 删除节点
get 获得节点的值
set 设置节点的具体值
create 创建节点
4、Zookeeper 有哪几种几种部署模式==( ABC )==
A、单机部署
B、集群部署
C、伪集群部署
三种部署模式:单机、集群、伪集群(一台好的机器用来单机部署有点浪费,于是利用虚拟化的技术将其转换为多台虚拟机)
5、四种类型的数据节点 Znode ( ABCD )
A、PERSISTENT-持久节点
B、EPHEMERAL-临时节点
C、PERSISTENT_SEQUENTIAL-持久顺序节点
D、EPHEMERAL_SEQUENTIAL-临时顺序节点
1、PERSISTENT-持久节点
除非手动删除,否则节点一直存在于 Zookeeper 上
2、EPHEMERAL-临时节点
临时节点的生命周期与客户端会话绑定,一旦客户端会话失效(客户端与zookeeper 连接断开不一定会话失效),那么这个客户端创建的所有临时节点都会被移除。
3、PERSISTENT_SEQUENTIAL-持久顺序节点
基本特性同持久节点,只是增加了顺序属性,节点名后边会追加一个由父节点维护的自增整型数字。
4、EPHEMERAL_SEQUENTIAL-临时顺序节点基本特性同临时节点,增加了顺序属性,节点名后边会追加一个由父节点维护的自增整型数字。