我正在研究一个原型来评估HBase在真实项目中的使用情况(取决于原型的结果)。在我正在处理的模式中,我在同一个列族中有多个列,我需要以原子方式更新其中的几个列(总是在同一行内)。我使用客户端api的checkAndPut方法做了一些测试,但它似乎只支持比较一个值(因此在put参数中设置一个值)。我是否正确理解这一点?如果是这样,是否有另一种方法来做我所需要的?带多列的CheckAndPut操作
回答
您可以使用RowMutations将单个行的所有PUT操作设置为一起,并获取所有更改为原子单位。
这将解决在同一行中原子地更改不同列的问题,但我无法看到如何使用checkAndPut方法的功能(仅当存储的值与checkAndPut参数匹配时才执行put操作)和RowMutations一起使用。你能用一个例子来指向我的页面吗?提前致谢。 – Diego 2013-04-15 15:50:36
我可能不会像这样使用HBase。但如果您必须锁定该行,请阅读并根据需要进行更新 - 请阅读有关锁定及其一些问题的更多信息,网址为http://www.ngdata.com/hbase-row-locks/。再次,我会尝试重新考虑这种情况,例如HBase支持多个版本,因此您可以随时更新并在稍后进行排序(例如,在更新后运行的协处理器中) – 2013-04-15 16:29:35
非常感谢您的链接,我会阅读它并看看我能否用这些信息解决问题。如果没有,我会考虑按照您的建议更改设计。 – Diego 2013-04-15 17:41:34
- 1. 带多列的Sapply操作
- 2. 多阵列操作
- 3. 带有多个操作的PHP表单
- 4. 带列表操作的Lambda表达式
- 5. checkAndPut总是成功
- 6. HBase的REST API checkAndPut或checkAndDelete
- 7. 操作会议多阵列
- 8. Haskell多态阵列操作
- 9. 多维PHP阵列操作
- 10. 列表上的多个操作
- 11. Grafana的多时间序列操作
- 12. 自定义操作导致带有多个参数的过滤列表?
- 13. 带多列的列表框
- 14. 多操作ocaml的
- 15. 带有3个子操作数的左操作数的movl?
- 16. 操作带套在序言
- 17. 操作队列中的跟踪操作
- 18. 多个操作
- 19. 带条件的XML2CSV转换过滤列| Unix操作系统的
- 20. 同时在多列上操作
- 21. 多列数据集和操作SQL
- 22. 列操作多个文件大熊猫
- 23. 蟒蛇多维列表操作
- 24. 集团和操作基于多个列
- 25. Python Pandas:Groupby并应用多列操作
- 26. 对多个列表重复操作
- 27. 带一个提交按钮的多个表单操作
- 28. 带有等级操作的无锁定跳过列表
- 29. 带有后退导航和下拉列表的Android操作栏
- 30. 列表操作
?您使用的是什么版本的HBase – 2013-04-12 05:33:32
我正在使用最新的稳定版本,它是0.94.6.1 – Diego 2013-04-14 23:50:35