【问题标题】:HBase rename rowHBase 重命名行
【发布时间】:2017-06-02 09:30:20
【问题描述】:

我需要能够重命名 HBase 中的行键,并且在我的研究中,没有支持的方法。唯一的方法是手动,通过以下步骤:

  • 获取旧键下的行
  • 将行放在新键下
  • 删除旧键下的行

让我感到困扰的是以下问题 - 如果中间出现故障怎么办?例如,我不想遇到在两个不同的行键下有同一行的情况。

是否有某种交易方式来做到这一点?

【问题讨论】:

    标签: hbase


    【解决方案1】:
    • HBase 中没有事务
    • 是的,行键是不可变的,您无法更改它。

    我可能看到的唯一方法是在客户端执行一些额外的验证或检查。例如:

    • 将旧行标记为已删除(将一些列添加到旧行软删除 = true 和新行 id = ???)
    • 使用新键创建新行
    • 删除具有旧行 ID 的行。

    根据创建的标志,如果 smith 出错,您可以回滚或完成操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-08
      • 2012-11-15
      • 2012-04-01
      相关资源
      最近更新 更多