大数据讲课笔记6.1 初识ZooKeeper
Posted howard2005
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据讲课笔记6.1 初识ZooKeeper相关的知识,希望对你有一定的参考价值。
文章目录
零、学习目标
- 理解ZooKeeper特性
- 掌握ZooKeeper集群角色
一、导入新课
- 带领学生回顾项目五MapReduce分布式计算框架的相关知识。由于ZooKeeper是Hadoop生态体系的一个重要组件,它是基于分布式计算的核心概念而设计的,主要是给开发人员提供一套容易理解和开发的接口,从而简化分布式系统构建的服务。因此,本项目将针对ZooKeeper分布式计算框架的基本概念进行详细讲解。
二、新课讲解
(一)ZooKeeper概述
- ZooKeeper是一个分布式协调服务的开源框架,它是由Google的Chubby开源实现。ZooKeeper主要用来解决分布式集群中应用系统的一致性问题和单点故障问题,例如如何避免同时操作同一数据造成脏读的一致性问题等。
- ZooKeeper 是分布式应用程序的协调服务框架,是Hadoop的重要组件。它要解决的问题:
(1)分布式环境下的数据一致性
(2)分布式环境下的统一命名服务
(3)分布式环境下的配置管理
(4)分布式环境下的分布式锁
(5)分布式集群的管理问题
(二)ZooKeeper特性
- ZooKeeper具有全局数据一致性、可靠性、顺序性、原子性以及实时性,可以说ZooKeeper的其他特性都是为满足ZooKeeper全局数据一致性这一特性。
(三)ZooKeeper集群角色
- ZooKeeper集群是一个主从集群,它一般是由一个Leader(领导者)和多个Follower(跟随者)组成。此外,针对访问量比较大的ZooKeeper集群,还可新增Observer(观察者)。ZooKeeper集群中的三种角色各司其职,共同完成分布式协调服务。
1、Leader角色
- Leader是ZooKeeper集群工作的核心,也是事务性请求(写操作)的唯一调度和处理者,保证集群事务处理的顺序性,同时负责进行投票的发起和决议,以及更新系统状态。
2、Follower角色
- Follower负责处理客户端的非事务(读操作)请求,如果接收到客户端发来的事务性请求,则会转发给Leader,让Leader进行处理,同时还负责在Leader选举过程中参与投票。
3、Observer角色
- Observer负责观察ZooKeeper集群的最新状态的变化,并且将这些状态进行同步。对于非事务性请求可进行独立处理;对于事务性请求,则会转发给Leader服务器进行处理。它不参与任何形式的投票,只提供非事务性的服务。
三、归纳总结
- 回顾本节课所讲的内容,并通过提问的方式引导学生解答问题并给予指导。
四、上机操作
- 形式:单独完成
- 题目:初识ZooKeeper
- 要求:观看尚硅谷大数据视频涉及ZooKeeper特性与集群角色这部分内容,然后撰写一篇学习报告。
以上是关于大数据讲课笔记6.1 初识ZooKeeper的主要内容,如果未能解决你的问题,请参考以下文章