美文网首页数据与未来
hadoop机架感知以及HDFS

hadoop机架感知以及HDFS

作者: Mervyn_2014 | 来源:发表于2018-01-24 14:28 被阅读22次

HDFS副本存放策略:

  1. 第一个副本,在客户端相同的节点(如果客户端是集群外的一台机器,就随机选节
    点,但是系统会避免挑选太满或者太忙的节点)
  2. 第二个副本,放在不同机架(随机选择)的节点。
  3. 第三个副本,放在与第二个副本同机架但是不同节点上。

机架感知:

机架感知.png
  1. distance(/D1/R1/H1,/D1/R1/H1)=0 相同的datanode
  2. distance(/D1/R1/H1,/D1/R1/H3)=2 同一rack下的不同datanode
  3. distance(/D1/R1/H1,/D1/R2/H4)=4 同一IDC下的不同datanode
  4. distance(/D1/R1/H1,/D2/R3/H7)=6 不同IDC下的datanode

HDFS:

HDFS由3个组件构成NameNode,SecondaryNameNode,DataNode。

NameNode:

NameNode主要是用来保存HDFS的元数据信息,比如命名空间信息,块信息等。当它运行的时候,这些信息是存在内存中的。但是这些信息也可以持久化到磁盘上。


NameNode.png

上面的这张图片展示了NameNode怎么把元数据保存到磁盘上的。这里有两个不同的文件:
fsimage - 它是在NameNode启动时对整个文件系统的快照
edit logs - 它是在NameNode启动后,对文件系统的改动序列

只有在NameNode重启时,edit logs才会合并到fsimage文件中,从而得到一个文件系统的最新快照。由于在集群中NameNode是很少重启的,这也意味着当NameNode运行了很长时间后,edit logs文件会变得很大。由此会产生如下问题:
edit logs文件会变的很大,如何管理这个文件?
NameNode的重启时间变长?因为有很多改动序列(edit logs)要合并到fsimage文件上。
引入 SecondaryNameNode来解决。

SecondaryNameNode(检查节点):

职责是合并NameNode的edit logs到fsimage文件中。


SecondaryNameNode.png

SecondaryNameNode定时到NameNode去获取edit logs,并更新到fsimage上。(Secondary NameNode自己的fsimage),一旦它有了新的fsimage文件,它将其拷贝回NameNode中。
NameNode在下次重启时会使用这个新的fsimage文件,从而减少重启的时间。
Secondary NameNode的整个目的是在HDFS中提供一个检查点。它只是NameNode的一个助手节点。
当我们往DataNode写文件时,DataNode会跟NameNode通信,告诉NameNode什么文件的第几个block放在它那里,NameNode这个时候会将这些元数据信息写到edit logs文件中。

相关文章

  • hadoop机架感知以及HDFS

    HDFS副本存放策略: 第一个副本,在客户端相同的节点(如果客户端是集群外的一台机器,就随机选节点,但是系统会避免...

  • Hadoop 2.6.0 HDFS Rack Awareness

    Hadoop 2.6.0 HDFS Rack Awareness(机架感知)原理与配置步骤详解 前言:  多副本前...

  • Hadoop8 机架感知配置和原理

    Hadoop 机架感知配置和原理 Hadoop机架感知 1.背景 Hadoop在设计时考虑到数据的安全与高效,数据...

  • HDFS 机架感知(Rack Awareness)

    什么是机架感知 设置机架感知的意义: 默认情况: 默认情况下HDFS没有开启机架感知,所有的机器默认都是在同一个机...

  • Hadoop机架感知

    Hadoop机架感知 (手机码字不容易...) 1.背景 Hadoop在设计时考虑到数据的安全与高效,数...

  • 运维培训总结

    运维培训 in 西安 1.机架感知: 要将hadoop机架感知的功能启用,配置非常简单,在namenode所在机器...

  • HDFS机制的理解

    一、写入数据HDFS写入数据时,根据block存储策略可能不同。首先要看是否启用了hadoop的机架感知,默认是关...

  • HDFS--机架感知

    君子生非异也,善假于物也。 Hadoop的设计目的:解决海量大文件的处理问题,主要指大数据的存储和计算问题,其中,...

  • hadoop hdfs 机架感知(副本存储节点选择)

    1.机架感知说明 http://hadoop.apache.org/docs/r3.1.3/hadoop-proj...

  • 大数据之hadoop机架感知

    Hadoop是一个能够对大量数据进行分布式处理的软件框架,实现了Google的MapReduce编程模型和框架,能...

网友评论

    本文标题:hadoop机架感知以及HDFS

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