02-HDFS分布式文件系统和ZooKeeper.pptx

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

HDFS分布式文件系统和ZooKeeper

本章主要讲解大数据分布式存储系统HDFS和解决分布式应用中经常遇到的一些数据管理问题的ZooKeeper分布式服务框架。通过本章的学习,为后续组件学习打好基础。

学完本课程后,您将能够:熟悉HDFS的相关概念熟悉HDFS的使用场景熟悉HDFS的系统架构熟悉HDFS的关键特性熟悉ZooKeeper的相关概念熟悉ZooKeeper的使用方法

HDFS概述及应用场景HDFS相关概念HDFS体系结构关键特性介绍HDFS的数据读写流程ZooKeeper概述ZooKeeper体系结构

字典与文件系统字典文件系统部首检字表(一)部首目录(二)检字表(三)难检字笔画索引字典正文文件名元数据(Metadata)数据块(Block)

HDFS概述Hadoop分布式文件系统(HDFS)是一种旨在在商品硬件上运行的分布式文件系统。HDFS具有高度的容错能力,旨在部署在低成本硬件上。HDFS提供对应用程序数据的高吞吐量访问,并且适用于具有大数据集的应用程序HDFS放宽了一些POSIX要求,以实现对文件系统数据的流式访问。HDFS最初是作为ApacheNutchWeb搜索引擎项目的基础结构而构建的。HDFS是ApacheHadoopCore项目的一部分。

HDFS应用场景举例

HDFS概述及应用场景HDFS相关概念HDFS体系结构关键特性介绍HDFS的数据读写流程ZooKeeper概述ZooKeeper体系结构

计算机集群结构分布式文件系统把文件分布存储到多个计算机节点上,成千上万的计算机节点构成计算机集群。目前的分布式文件系统所采用的计算机集群都是由普通硬件构成的,这就大大降低了硬件上的开销。

基本系统架构HDFSArchitectureMetadata(Name,replicas,…):/home/foo/data,3,…DataNodeRack1Rack2DataNodeReplicationMetadataopsBlockopsNameNodeReadClientClientBlocksBlocks

Block-块HDFS默认一个块128MB,一个文件被分成多个块,以块作为存储单位。块的大小远远大于普通文件系统,可以最小化寻址开销。抽象的块概念可以带来以下几个明显的好处:支持大规模文件存储简化系统设计适合数据备份

NameNode和DataNodes-1NameNodeDataNode存储元数据存储文件内容元数据保存在内存中文件内容保存在磁盘保存文件,block,datanode之间的映射关系维护了blockid到datanode本地文件的映射关系

NameNode和DataNodes-2

DataNodes数据节点是分布式文件系统HDFS的工作节点,负责数据的存储和读取,会根据客户端或者是名称节点的调度来进行数据的存储和检索,并且向名称节点定期发送自己所存储的块的列表每个数据节点中的数据会被保存在各自节点的本地Linux文件系统中

HDFS概述及应用场景HDFS相关概念HDFS体系结构关键特性介绍HDFS的数据读写流程ZooKeeper概述ZooKeeper体系结构

HDFS体系结构概述

HDFS命名空间管理HDFS的命名空间包含目录、文件和块HDFS使用的是传统的分级文件体系,因此,用户可以像使用普通文件系统一样,创建、删除目录和文件,在目录间转移文件,重命名文件等NameNode维护文件系统命名空间。对文件系统命名空间或其属性的任何更改均由NameNode记录。

通信协议HDFS是一个部署在集群上的分布式文件系统,因此,很多数据需要通过网络进行传输所有的HDFS通信协议都是构建在TCP/IP协议基础之上的客户端通过一个可配置的端口向名称节点主动发起TCP连接,并使用客户端协议与名称节点进行交互名称节点和数据节点之间则使用数据节点协议进行交互客户端与数据节点的交互是通过RPC(RemoteProcedureCall)来实现的。在设计上,名称节点不会主动发起RPC,而是响应来自客户端和数据节点的RPC请求

客户端客户端是用户操作HDFS最常用的方式,HDFS在部署时都提供了客户端HDFS客户端是一个库,包含HDFS文件系统接口,这些接口隐藏了HDFS实现中的大部分复杂性严格来说,客户端并不算是HDFS的一部分客户端可以支持打开、读取、写入等常见的操作,并且提供了类似Shell的命令行方式来访问HDFS中的数据HDFS也提供了JavaAPI,作为应用程序访问文件系统的客户端编程接口

HDFS单名称节点体系结构的局限性HDFS只设置唯一一个名称节点,这样做虽然大大简化了系统设计,但也带来了一些明显的局限性,具体如下:命名空间的限制:名称节点是保存在内存中的,

文档评论(0)

祝朝兵 + 关注
实名认证
内容提供者

原版文件原创

1亿VIP精品文档

相关文档