【问题标题】:Hbase 0.92.1: how to fix .META. table ,because it lost some regioninfoHbase 0.92.1:如何修复 .META。 table ,因为它丢失了一些 regioninfo
【发布时间】:2015-05-03 14:54:48
【问题描述】:

我的 Hbase 版本是 0.92.1。

我发现我的 reduce 工作有异常

java.io.IOException: HRegionInfo was null or empty in .META., row=keyvalues={single,20150411 hxmyxy2013 REF// 336d5ebc5436534e61d16e63ddfca327 7f92f92e8e693531c12a1dcc773f9ffa,1430298962344.ea72df9a3703e476b9f7e3368be47aa2./info:server/1430356486086/Put/vlen=28, single,20150411 hxmyxy2013 REF// 336d5ebc5436534e61d16e63ddfca327 7f92f92e8e693531c12a1dcc773f9ffa,1430298962344.ea72df9a3703e476b9f7e3368be47aa2./info:serverstartcode/1430356486086/Put/vlen=8}

然后我运行命令:hbase hbck

其中输出 57 个错误,例如:

ERROR: Region hdfs://hadoop01.yupoo-inc.com:9000/hbase/single/fa921b223692d89be274979e1e8f1674 on HDFS, but not listed in META or deployed on any region server

=====

总结:

-ROOT- 没问题。

Number of regions: 1

Deployed on:  hadoop02.yupoo-inc.com,60020,1430643409216

.META。没关系。

Number of regions: 1

Deployed on:  hadoop01.yupoo-inc.com,60020,1430643412565

全局没问题。

Number of regions: 1

Deployed on:  hadoop03.yupoo-inc.com,60020,1430643409040

单身没问题。

Number of regions: 2081

Deployed on:  hadoop01.yupoo-inc.com,60020,1430643412565 hadoop02.yupoo-inc.com,60020,1430643409216 hadoop03.yupoo-inc.com,60020,1430643409040 hadoop04.yupoo-inc.com,60020,1430643408453 hadoop05.yupoo-inc.com,60020,1430643407996

总结没问题。

Number of regions: 2540

Deployed on:  hadoop01.yupoo-inc.com,60020,1430643412565 hadoop02.yupoo-inc.com,60020,1430643409216 hadoop03.yupoo-inc.com,60020,1430643409040 hadoop04.yupoo-inc.com,60020,1430643408453 hadoop05.yupoo-inc.com,60020,1430643407996

总体还可以。

Number of regions: 172

Deployed on:  hadoop01.yupoo-inc.com,60020,1430643412565 hadoop02.yupoo-inc.com,60020,1430643409216 hadoop03.yupoo-inc.com,60020,1430643409040 hadoop04.yupoo-inc.com,60020,1430643408453 hadoop05.yupoo-inc.com,60020,1430643407996

网址没问题。

Number of regions: 5

Deployed on:  hadoop02.yupoo-inc.com,60020,1430643409216 hadoop03.yupoo-inc.com,60020,1430643409040

检测到 57 个不一致。

状态:不一致

=====

似乎某些区域信息不在元表中,所以我问了谷歌并找到了类似 hbase hbck -repair-fixMeta -fixAssignments-repairHoles 的命令 但是我的hbase版本没有这个命令,我运行命令hbase hbck --help,它输出:

未知的命令行选项:--help

用法:fsck [opts]

[opts] 在哪里:

-details 显示所有地区的完整报告。

-timelag {timeInSeconds} 只处理没有 在过去 {{timeInSeconds} 秒内经历了任何元数据更新。

-fix 尝试修复一些错误。

-sleepBeforeRerun {timeInSeconds} 在使用 -fix 运行检查修复是否有效之前睡眠这么多秒

-summary 仅打印表格和状态的摘要。

-metaonly 只检查ROOT和META表的状态。

但是当我运行 hbase hbck -fix 时,它什么也没做,那么任何人都可以帮助我吗?

【问题讨论】:

    标签: hadoop hbase


    【解决方案1】:

    我自己解决了这个问题。

    我发现我的 reduce 任务失败,出现以下异常:

    java.io.IOException: HRegionInfo was null or empty in .META., row=keyvalues={single,20150411 hxmyxy2013 REF// 336d5ebc5436534e61d16e63ddfca327 7f92f92e8e693531c12a1dcc773f9ffa,1430298962344.ea72df9a3703e476b9f7e3368be47aa2./info:server/1430356486086/Put/vlen=28 , single,20150411 hxmyxy2013 REF// 336d5ebc5436534e61d16e63ddfca327 7f92f92e8e693531c12a1dcc773f9ffa,1430298962344.ea72df9a3703e476b9f7e3368be47aa2./info:serverstartcode/1430356486086/Put/vlen=8}

    然后我通过运行以下命令检查 Hbase shell: 得到 '.META.', 'single,20150411 hxmyxy2013 REF// 336d5ebc5436534e61d16e63ddfca327 7f92f92e8e693531c12a1dcc773f9ffa,1430298962344.ea72df9a3703e47ab.

    哪个输出是:

    列单元格

    信息:服务器时间戳=1430356486086,值=hadoop05.yupoo-inc.com:60020

    info:serverstartcode 时间戳=1430356486086,值=1430352791855

    0.0080 秒内 2 行

    然后我删除这个数据是哪个键:

    单,20150411 hxmyxy2013 REF// 336d5ebc5436534e61d16e63ddfca327 7f92f92e8e693531c12a1dcc773f9ffa,1430298962344.ea72df9a3703e4476b9fp7e338.

    【讨论】:

      猜你喜欢
      • 2012-06-10
      • 2021-10-05
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 2012-08-13
      • 1970-01-01
      • 2018-08-22
      • 1970-01-01
      相关资源
      最近更新 更多