【问题标题】:Hadoop adding datanode with smaller hard drivesHadoop 添加具有更小的硬盘驱动器的数据节点
【发布时间】:2013-10-10 02:27:10
【问题描述】:

我们计划在我们的 Hadoop 集群中添加两个新的数据节点。谷歌搜索一天后,我仍然无法回答这个问题: 如果新数据节点上的硬盘驱动器更小,会发生什么? 这会导致 HDFS 的总大小变小吗?

这是一个例子

Datanode1 with 1TB
Datanode2 with 1TB
Total storage = 2TB

添加一个具有 500GB 磁盘的节点

Datanode3 with 500GB

HDFS 的总存储量是多少? 2.5TB 还是 1.5TB?

如果是 2.5TB(我希望如此),hadoop 如何平衡具有不同硬盘的不同数据节点周围的存储?

【问题讨论】:

    标签: hadoop hdfs


    【解决方案1】:

    HDFS 总容量为 2.5 TB。现有块将按原样存在,一旦添加到集群中,就不会移动到新节点。要将一些块从过载节点移动到负载不足的节点,请使用 Hadoop 安装中的 bin/start-balancer.shbin/stop-balancer-sh 脚本。

    块放置策略将决定时钟的去向。由于新节点 HDD 是空的,因此放入 HDFS 的新文件块更有可能到达那里。

    【讨论】:

    • 好的。我想我现在明白了。 BlockPlacementPolicyDefault.java : /* judge if a node is a good target. * return true if <i>node</i> has enough space, * does not have too much load, and the rack does not have too many nodes */ private boolean isGoodTarget(DatanodeDescriptor node, long blockSize, int maxTargetPerLoc, List<DatanodeDescriptor> results) { // }感谢@PraveenSripati 将我指向 BlockPlacementPolicyDefault
    猜你喜欢
    • 2023-03-17
    • 2017-01-27
    • 2012-08-07
    • 2011-08-06
    • 2012-02-08
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 2014-04-20
    相关资源
    最近更新 更多