hadoop - HDFS 不复制 block

标签 hadoop hdfs cloudera-cdh

我最近安装了 Hadoop (Cloudera)。我得到一个错误,我在复制 block 下(在 Cloudera Manager 中,它是安装的 gui)。所以当我跑的时候

hdfs dfsadmin -report

我明白了

Configured Capacity: 555730632704 (517.56 GB)
Present Capacity: 524592504832 (488.56 GB)
DFS Remaining: 524592193536 (488.56 GB)
DFS Used: 311296 (304 KB)
DFS Used%: 0.00%
Under replicated blocks: 5
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0

这意味着出于某种原因我的 hdfs 没有复制 block 。从这里检查什么?这可能是我的问题吗 HDFS Balancer我需要手动运行它吗?

最佳答案

复制 block 不足有两个主要原因:

1。复制因子超过可用数据节点

假设您只有 2 个数据节点,并且您的复制因子为 3,那么您创建的每个 block 都将处于复制状态,因为根本没有要复制到的 3 个数据节点。

解决方案可以是添加数据节点,也可以是降低复制因子。

2。集群太忙

集群会将“实际”工作优先于 block 的复制。因此,如果您创建了大量 block ,可能需要一段时间才能 catch 。如果您的集群一直很忙,理论上可能总会有一些复制不足的 block 。

请注意,正如您提到的,它是一个新集群,并且磁盘似乎几乎是空的,我认为 2 不会出现这种情况。


除此之外,当然也有可能确实出现了某些问题(例如平衡),但在您确认可以排除上述两种情况之前,我不会担心这一点。大多数损坏的东西往往会在这里或那里导致错误,所以假设您没有看到任何错误,这种情况就不太可能发生。

关于hadoop - HDFS 不复制 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46824383/

相关文章:

java - Hadoop "Unable to load native-hadoop library for your platform"警告

hadoop - 将hadoop与OBIEE集成的利弊

hive - 带有Hive 1.1(CDH 5.7.1)的Apache NiFi Hive处理器

hadoop - 数据移动 HDFS 与并行文件系统与 MPI

hadoop - 从 HDFS 中删除文件不会释放磁盘空间

unix - hadoop的cloudera发行版未安装

java - 我的 MapReduce 程序出现错误,我想收集多年来的最高温度

hadoop - 如何在Cloudera Manager/CDH4中重命名主机?

hadoop - HDFS如何修改数据

hadoop - 将文件从hadoop群集(远程Windows机器)中上传到hdfs,就像色相上传一样