第二章 HDFS分布式文件系统.pptx

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

第2章HDFS分布式文件系统思政目标:无论在什么领域,从事什么样的工作,谁懂得数据的重要性,谁会在工作中善用数据,就更有可能获得成功。

2.1HDFS的设计2.2HDFS体系结构▲2.3HDFS文件系统2.4HDFS常用接口目录CONTENT

2.1HDFS的设计HDFS是为以流式数据访问模式存储超大文件而设计的文件系统,在商用硬件的集群上运行。“超大文件”在这里指几百MB,几百GB甚至几百TB大小的文件。一个只有500GB的单机节点无法一次性处理连续的PB级的数据,那么应如何解决这个问题呢?这就需要把大规模数据集分别存储在多个不同的节点的系统中,实现跨网络的多个节点资源的文件系统,即分布式文件系统(DistributedFileSystem)。它与普通磁盘文件系统有很多相近的地方,但由于整个架构是在网络上,而网络编程的复杂性和网络的不可靠性势必造成分布式文件系统要比普通的磁盘系统复杂。HDFS用来设计存储大数据,并且是分布式存储,所以所有特点都与大数据与分布式有关,其设计特点可概括为如下几点:1、简单一致性2、故障检测与自动恢复3、流式数据访问4、低延迟数据访问5、大量的小文件6、多用户写入,任意修改文件

2.2HDFS体系结构HDFS是一个典型的主从结构,一个主节点或者说是元数据节(MetadataNode)负责系统命名空间(NameSpace)的管理、客户端文件操作的控制和存储任务的管理分配,多个从节点或者说是数据节点(DataNode)提供真实文件数据的物理支持,系统架构如图所示。

2.2.1数据块在计算机,每个磁盘都有自己的物理磁盘块,是读写文件数据的最小单位。对于单机文件系统的块一般由多个物理磁盘块组成,一般磁盘块的大小为512B,文件系统块由几个磁盘块组成达到几千字节,并且系统还有专门的磁盘管理工具(fs和fsck)来管理和维护文件系统,它们直接针对文件系统块操作。在HDFS上也有块的概念,不过要比单机文件系统大得多,默认为64MB。在HDFS上的文件被划分为多个64MB的大块(Chunk)作为独立存储单元。与单机分布式文件系统不同的是,不满一个块大小的数据不会占据整个块空间,也就是这个块空间还可以给其他数据共享。

HDFS采用抽象的块概念可以带来以下几个明显的好处:●支持大规模文件存储:文件以块为单位进行存储,一个大规模文件可以被分拆成若干个文件块,不同的文件块可以被分发到不同的节点上,因此,一个文件的大小不会受到单个节点的存储容量的限制,可以远远大于网络中任意节点的存储容量●简化系统设计:首先,大大简化了存储管理,因为文件块大小是固定的,这样就可以很容易计算出一个节点可以存储多少文件块;其次,方便了元数据的管理,元数据不需要和文件块一起存储,可以由其他系统负责管理元数据●适合数据备份:每个文件块都可以冗余存储到多个节点上,大大提高了系统的容错性和可用性2.2.1数据块

2.2.2名称节点和数据节点名称节点的数据结构?在HDFS中,名称节点(NameNode)负责管理分布式文件系统的命名空间(Namespace),保存了两个核心的数据结构,即FsImage和EditLog?FsImage用于维护文件系统树以及文件树中所有的文件和文件夹的元数据?操作日志文件EditLog中记录了所有针对文件的创建、删除、重命名等操作名称节点记录了每个文件中各个块所在的数据节点的位置信息名称节点记录了每个文件中各个块所在的数据节点的位置信息数据节点(DataNode)是分布式文件系统HDFS的工作节点,负责数据的存储和读取,会根据客户端或者名称节点的调度来进行数据的存储和检索,并且向名称节点定期发送自己所存储块的列表信息。每个数据节点中的数据会被保存在各自节点的本地linux文件系统中。

2.2.2名称节点和数据节点名称节点的数据结构

2.2.2名称节点和数据节点Fsimage文件包含文件系统中所有目录和文件inode的序列化形式。每个inode是一个文件或目录的元数据的内部表示,并包含此类信息:文件的复制等级、修改和访问时间、访问权限、块大小以及组成文件的块。对于目录,则存储修改时间、权限和配额元数据Fsimage文件没有记录文件包含哪些块以及每个块存储在哪个数据节点。而是由名称节点把这些映射信息保留在内存中,当数据节点加入HDFS集群时,数据节点会把自己所包含的块列表告知给名称节点,此后会定期执行这种告知操作,以确保名称节点的块映射是最新的。Fsimage文件

2.2.2名称节点和数据节点名称节点的启动过程?名称节点在启动时,会将Fsimage的内容加载到内存中,然后执行EditLog文件中的各项操作,使内

文档评论(0)

弹弹 + 关注
实名认证
内容提供者

人力资源管理师、教师资格证持证人

该用户很懒,什么也没介绍

版权声明书
用户编号:6152114224000010
领域认证该用户于2024年03月13日上传了人力资源管理师、教师资格证

1亿VIP精品文档

相关文档