Hbase自动递增任何列/行键

 莫不静了_660 发布于 2022-12-11 23:10

我是Hbase的新手

是否可以/如何在Hbase中自动增加行键?(比如每个插入行键必须自动递增)

或者是否可以自动增加任何其他列?(对于每个插入,此列必须自动递增1)

1 个回答
  • 在HBase中不建议单列增加行键,请参阅此参考:http://hbase.apache.org/book/rowkey.design.html,第6.3.2页.实际上,使用全局排序的行键会导致分布式应用程序的所有实例写入同一区域,这将成为瓶颈.

    如果您可以避免使用自动增量ID并且需要在分布式系统中只具有唯一ID,则可以使用"hostname"+"PID"+"TIMESTAMP"之类的键作为键.这样,每行都是唯一的

    如果您确定需要表中的全局自动增量(它可以是列中的键或某个值),您可以使用incrementColumnValue调用 - 在表中有一个单独的行(或为此创建一个专用表),存储实际值,进程将在插入新行之前调用incrementColumnValue以获取下一个值.但是这样你就无法保证没有间隙:如果客户端在调用incrementColumnValue后失败,你可能会使计数器递增但不会插入行.

    简而言之,所有提出的解决方案都是客户端的,HBase中没有针对此功能的服务器端实现

    2022-12-11 23:27 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有