gpt4 book ai didi

hadoop - HBase:表test在meta中不存在但有znode。运行 hbck 修复不一致(失败)

转载 作者:可可西里 更新时间:2023-11-01 15:49:53 24 4
gpt4 key购买 nike

我最近在开始使用 HBase 时添加了一个表 test

由于一些问题,我决定重新安装 HBase。

重新安装并运行 HBase shell 后,我尝试了:

hbase(main):004:0> list
TABLE
0 row(s) in 0.0070 seconds

=> []

所以没有表格。现在我尝试添加表 test

hbase(main):005:0> create 'test', 'testfamily'

ERROR: Table already exists: test!

我查看了日志文件并找到了以下条目

2018-06-21 07:53:30,646 WARN [ProcedureExecutor-2] procedure.CreateTableProcedure: The table test does not exist in meta but has a znode. run hbck to fix inconsistencies.

我运行它并得到以下结果

$ hbase hbck test
Table hbase:meta is okay.
Number of regions: 1
Deployed on: my_IP,16201,1529567081041
0 inconsistencies detected.
Status: OK

我想知道是否有办法手动删除 znode

最佳答案

我也遇到过同样的问题,显示以下错误

The table does not exist in meta but has a znode. run hbck to fix inconsistencies.

答案很明显,仅在错误中。

不一致是因为该表存在于您的 zookeeper quorum(分布式/伪分布式模式)或单个 zookeeper 节点(对于独立模式)但不存在于 hbase 中。

所以解决方案是从 zookeeper 节点中删除表。

这样做——

  1. 打开动物园管理员客户端。 bin/zkCli.sh
  2. 你可以看到zookeeper通过ls /hbase/table挑选的所有表
  3. 尝试找到错误中提到的表名并运行rmr /hbase/table/<table_name> .这将从 zookeeper 的状态中删除该表。
  4. 尝试从 Hbase 再次创建表。它将毫无问题地创建。

关于hadoop - HBase:表test在meta中不存在但有znode。运行 hbck 修复不一致(失败),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50963872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com