作者:林老悲-- | 来源:互联网 | 2023-02-09 10:48
client 向 Active NN 发送写请求时,NN为这些数据分配DN地址,HDFS文件块副本的放置对于系统整体的可靠性和性能有关键性影响。一个简单但非优化的副本放置策略是,把副本分别放在不同机架,甚至不同IDC,这样可以防止整个机架、甚至整个IDC崩溃带来的错误,但是这样文件写必须在多个机架之间、甚至IDC之间传输,增加了副本写的代价,是否有较优的方案来解决这个问题呢?
目录:
常用策略:
- hdfs 在缺省配置下副本数是3个,通常的策略是:
- 第一个副本放在和Client相同机架的Node里(如果Client不在集群范围,第一个Node是随机选取不太满或者不太忙的Node)
- 第二个副本放在与第一个Node不同的机架中的Node
- 第三个副本放在与第二个Node所在机架里不同的Node. 示例图如下:
#
- 默认情况下,Hadoop机架感知是没有启用的,这时任何一台 DN 机器,不管物理上是否属于同一个机架,NN 都会默认将他们默认为在/default-rack下, 此时,就很容易出现之前提到的增添机架间网络负载的情况,如我们前面单节介绍基于 hdp2.4安装的集群就没指定rack, 如下图所示。
- #
机架配置:
分配原理:
下面关于Hadoop的文章您也可能喜欢,不妨看看:
Ubuntu14.04下Hadoop2.4.1单机/伪分布式安装配置教程 2015-02/113487.htm
CentOS安装和配置Hadoop2.2.0 2014-01/94685.htm
Ubuntu 13.04上搭建Hadoop环境 2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1版本集群配置 2013-09/90600.htm
Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) 2013-01/77681.htm
Ubuntu下Hadoop环境的配置 2012-11/74539.htm
单机版搭建Hadoop环境图文教程详解 2012-02/53927.htm
Hadoop 专题页面 =13