大数据讲课笔记6.1 初识ZooKeeper

Posted howard2005

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据讲课笔记6.1 初识ZooKeeper相关的知识,希望对你有一定的参考价值。

文章目录

零、学习目标

  1. 理解ZooKeeper特性
  2. 掌握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的主要内容,如果未能解决你的问题,请参考以下文章

大数据讲课笔记6.4 ZooKeeper分布式集群部署

大数据讲课笔记6.2 ZooKeeper数据模型

大数据讲课笔记6.5 ZooKeeper的Shell操作

大数据讲课笔记6.5 ZooKeeper的Shell操作

大数据讲课笔记6.6 ZooKeeper的Java API操作

大数据讲课笔记6.6 ZooKeeper的Java API操作