分享

块副本在DataNode上的放置策略

gwgyk 发表于 2014-11-21 16:47:35 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 10 27543
刚想到这么一个问题,请教下大家
假设hadoop的副本个数为3,集群中的每个DataNode都配置了3个dfs.data.dir,那么当某个DN被选作存放某个block时,这个block是在这3个dfs.data.dir中都有呢?还是只放在其中一个dfs.data.dir里?

已有(10)人评论

跳转到指定楼层
pig2 发表于 2014-11-21 17:30:13
第一个block副本放在和client所在的node里(如果client不在集群范围内,则这第一个node是随机选取的,当然系统会尝试不选择哪些太满或者太忙的node)。
第二个副本放置在与第一个节点不同的机架中的node中(随机选择)。


第三个副本和第二个在同一个机架,随机放在不同的node中。

参考:
http://www.aboutyun.com/thread-4959-1-1.html

更多内容:


hadoop机架感知--加强集群稳固性,该如何配置hadoop机架感知


hadoop_机架感知配置

回复

使用道具 举报

gwgyk 发表于 2014-11-21 18:46:58
pig2 发表于 2014-11-21 17:30
第一个block副本放在和client所在的node里(如果client不在集群范围内,则这第一个node是随机选取的,当然 ...

我的意思是,在选择了DataNode之后,对于每个DataNode中的多个${dfs.data.dir}目录该怎么选择呢?
回复

使用道具 举报

bioger_hit 发表于 2014-11-21 19:13:25
gwgyk 发表于 2014-11-21 18:46
我的意思是,在选择了DataNode之后,对于每个DataNode中的多个${dfs.data.dir}目录该怎么选择呢?
楼主需要对hadoop有一个深入的了解。
hadoop是一个分布式系统,所谓的分布式存储,意思是他们是分布在不同节点的,但是他们是一个整体,它会选择节点,并按照配置文件存储在指定位置。
hadoop本身是有备份的,默认为三份,如果在指定三个目录,那就是9份了。


回复

使用道具 举报

gwgyk 发表于 2014-11-21 20:14:21
bioger_hit 发表于 2014-11-21 19:13
楼主需要对hadoop有一个深入的了解。
hadoop是一个分布式系统,所谓的分布式存储,意思是他们是分布在不 ...

我刚才找到在源码里找到了,是这样的:
假如每个DataNode有多个${dfs.data.dir}目录(这些目录会在DataNode中组织成一个数组),那么他在写Block的时候,就按数组的顺序选择一个来写(当然是写到其下的blocksBeingWriting目录中)。
比如说,上次是写到数组中第二个目录了,那么这次就写到第三个目录中去。以此类推
  并不会在每个${dfs.data.dir}中都写一遍。当然也就不会有9份了。


我在集群上也测试了,在多个${dfs.data.dir}情况下,每个块不会在每个${dfs.data.dir}中都存在。
回复

使用道具 举报

bioger_hit 发表于 2014-11-21 20:19:25
回复

使用道具 举报

gwgyk 发表于 2014-11-21 20:28:56
bioger_hit 发表于 2014-11-21 20:19
好的,现在环境被毁了,等弄好了,试试

好的,你测试好了一定要把结果告诉我啊。我在想hadoop会不会在空闲的时候把块拷贝到其余所有${dfs.data.dir}中去?
下面是我的测试结果:
d.png
回复

使用道具 举报

desehawk 发表于 2014-11-21 23:03:59
楼主不能只看block,看看文件的内容,三个目录中是否一致。
回复

使用道具 举报

sstutu 发表于 2014-11-22 01:22:50
gwgyk 发表于 2014-11-21 20:28
好的,你测试好了一定要把结果告诉我啊。我在想hadoop会不会在空闲的时候把块拷贝到其余所有${dfs.data.d ...


首先按照正常情况,假如你配置的一个目录,看看系统备份几份。如果还是找到一份,说明有问题。
从多角度验证,得出的结果才更高可靠些。
回复

使用道具 举报

gwgyk 发表于 2014-11-22 21:54:53
sstutu 发表于 2014-11-22 01:22
首先按照正常情况,假如你配置的一个目录,看看系统备份几份。如果还是找到一份,说明有问题。
从多角 ...

我不是很明白你的意思,能解释下吗?
回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条