【发布时间】:2015-09-17 07:09:27
【问题描述】:
我们使用一个 hbase 表作为一个大队列。许多客户端可以插入其中,并且许多客户端想要从中读取数据。问题是互斥。在客户端读取数据直到删除它的范围内,另一个客户端也可以读取它!但我们要确保每一行都返回一个且只有一个客户端。
我应该提到我们正在使用 Java hbase 客户端。
有没有办法像原子地获取和删除一行或在 hbase 中获取和更新,或者有什么办法可以管理这种情况?
我找到了 RowLock 机制,但它已被弃用并且不再存在。还有一个使用zookeeper的分发锁,但似乎效率不高。
提前致谢。
【问题讨论】:
标签: java hbase apache-zookeeper mutual-exclusion