我已經在HBase的表中的下列行稱爲test
如何從REST客戶端使用後綴glob從HBase中檢索多行?
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
我試圖檢索使用後綴通配符row
的與rowkey匹配前綴的所有行,如前所述here
但爲什麼當我嘗試http://localhost:8080/test/row*
時,我得到Bad request
其中localhost:8080
是Stargate正在偵聽的HBase REST服務器的位置,test
是表格,而row
是部分rowkey 。我在瀏覽器和REST客戶端海報(Firefox插件)中執行它。執行URL http://localhost:8080/test/row*/cf
給出了響應value1
,但我想要檢索rowkey中匹配前綴row
的所有行中的值。
我正在運行HBase 0.94.26,Stargate(捆綁了HBase),Hadoop 1.2.1,Ubuntu 12.04虛擬機。
是否有可能以至少編程方式檢索所有行?
是的,你可以做到這一點作爲就像在PHP中一樣。但我認爲Rest WS必須工作,你有機會通過這個鏈接http://archive.cloudera.com/cdh4/cdh/4/hbase/apidocs/org/apache/hadoop/hbase/rest/package-summary。 html#operation_cell_query_multiple –
或者先試試這個鏈接'http:// localhost:8080/test/row。*'我在asterix之前加了點。 –
感謝您的快速回復。我現在開始工作了。缺少的部分是在Accept中將Accept頭設置爲text/xml或application/json等。一旦我這樣做了,我就得到了響應中的所有匹配行。請將您的第一個答覆作爲答案,以便我可以接受它作爲解決方案。你共享的Cloudera鏈接幫助我解決了這個問題。 – sundeepa