我在名为test
ROW COLUMN+CELL row1 column=cf:a, timestamp=1429204170712, value=value1
row2 column=cf:b, timestamp=1429204196225, value=value2
row3 column=cf:c, timestamp=1429204213427, value=value3
我正在尝试使用后缀Globbing 检索rowkey匹配前缀row
的所有行,如上所述here
但是当我尝试Bad request
时,为什么我得到http://localhost:8080/test/row*
localhost:8080
是HBase REST服务器Stargate正在侦听的地方,test
是表格row
是一个部分rowkey。我在浏览器和REST客户端Poster(Firefox插件)中执行它。执行URL http://localhost:8080/test/row*/cf
会给出响应value1
,但我想检索rowkey匹配前缀row
的所有行中的值。
我正在运行HBase 0.94.26,Stargate(捆绑了HBase),Hadoop 1.2.1,Ubuntu 12.04虚拟机。
是否可以至少以编程方式检索所有行?
答案 0 :(得分:1)
根据doc,REST可以很好地检索所有行。但是,您只需相应地修改URL。 根据我的意见,尝试以下对它们的评论应该有效,请注意我还没有测试过。
http://localhost:8080/test/row*
http://localhost:8080/test/row
后缀全球化
行的多个值查询可以选择附加后缀glob 行键。这是一种限制形式的扫描仪,它将返回 包含所提供键的键的所有行中的所有值 在他们的左手边,例如:
org.someorg.* -> org.someorg.blog -> org.someorg.home -> org.someorg.www