美文网首页
HDFS架构

HDFS架构

作者: jose_dl | 来源:发表于2017-08-18 15:33 被阅读0次

    当客户机要读取数据的时候,要从NameNode中读取Metadata元数据信息。元数据信息保存在NameNode内存中和磁盘中。因为内存中保存是为了查询速度,磁盘中保存是为了安全,因为内存中存储的不安全。

    元数据存储细节

    • 元数据
      类似于仓库中的账本,描述着物品的描述信息。


      image.png
    • 如何判断该文件是否损坏
      一个文件的每一块拥有一个值,校验和。具体过程是:从datanode中读取一个块信息,可以得到一个校验值。这个值和元数据中保存的值比较,如果不同就判断为损坏。

    NameNode

    • 整个文件系统的管理节点。
      维护着整个文件系统饿文件目录树。
      文件/目录的元信息和每个文件对应的数据块列表。
      接收用户的操作请求
    • NameNode中主要包括一下文件
      • fsimage:元数据镜像文件。就是将内存中的元数据信息保存到磁盘,需要的时候就再从磁盘读取出来到内存。Hadoop1,Hadoop2伪分布式没有和内存中保持实时同步。
      • edits:操作日志文件
      • fstime:保存最后一次的还原点时间
    • NameNode工作特点
      • NameNode始终在内存中保存metadata,用于处理用户的"读请求"
      • “写请求”时,namenode会在写入的时候,向edits文件写日志。文件上传成功后,才会修改内存中的元数据信息。先后顺序,是指edits文件和内存中的先后
    • Hadoop会维护一个fsimage文件,但是该文件不会随时和namenode内存中的metadata保持一致,而是每隔一段时间才会合并edits文件来更新内容。
      SecondaryNameNode就是用来合并fsimage和edits文件来更新NameNode中的metadata

    DataNode

    如果130M的数据,会被分成2块。但是第二块并不会给分配128M空间。

    Secondary NameNode(集群中是没有的)

    Secondary NameNode不是NameNode的热备。当NameNode宕机,并不会作为替补。Secondary NameNode仅仅是NameNode的工作助理。

    • 执行过程
      从NameNode中得到fsimage和edits,合并,然后生成新的fsimage,在本地保存,并返回给NameNode

    相关文章

      网友评论

          本文标题:HDFS架构

          本文链接:https://www.haomeiwen.com/subject/ulcarxtx.html