HBase + HDFS - 缺少 hdfs 块

Posted

技术标签:

【中文标题】HBase + HDFS - 缺少 hdfs 块【英文标题】:HBase + HDFS - missing hdfs blocks 【发布时间】:2012-07-19 14:47:59 【问题描述】:

在从我们的 hbase 集群中删除几个节点时,我们过早地退出了 hadoop 安全模式(在退役完成之前)。当我们运行 hdfs fsck 时,我们意识到有一些缺失的块。我们立即将删除的节点重新添加到集群中。 fsck 仍然报告缺少某些块。

与此同时,HBase 无法从区域中找到这些缺失的块。解决问题的最佳方法是什么?我们知道 HBase 无法找到的 HDFS 文件的位置。

更新:

更正 - namenode 仅包含有关丢失块的元数据。缺少实际的块。我们现在如何修复 HBase 以从区域服务器中删除这些数据块?

【问题讨论】:

【参考方案1】:

我们通过迁移到最新版本的 HBase (0.94.1RC) 解决了这些问题。这个版本附带了更好的修复工具 (hbck)。使用它,我们能够修复 .META. 并修复 HDFS 漏洞。

【讨论】:

以上是关于HBase + HDFS - 缺少 hdfs 块的主要内容,如果未能解决你的问题,请参考以下文章

HDFS和Hbase配置同步

从 HBase 中的 HDFS 导入表

HBase集群基于HDFS

Hbase/HDFS存储扩容实践

HDFS的快照原理和Hbase基于快照的表修复

Hbase 用mr-hdfs hdfs-mr