我正在使用curl通過REST訪問Hbase。我在將數據插入到Hbase時遇到問題。我遵循Stargate文檔,但是當我遵循相同的語法時,它會給我400/405錯誤的錯誤請求和方法不允許的錯誤。我已經粘貼了下面的命令。請告訴我我哪裏錯了。使用Stargate Rest將數據插入到Hbase
星際文件說
POST /<table>/<row>/<column> (:qualifier)?/<timestamp>
curl -H "Content-Type: text/xml" --data '[...]' http://localhost:8000/test/testrow/test:testcolumn
我的curl命令如下:
curl -H "Content-Type: text/xml" --data '[<CellSet><Row key="111"><Cell column="f1">xyz</Cell></Row></CellSet>]' http://localhost:8080/mytable/row/fam
什麼是做到這一點的正確方法?因爲這給我錯誤的請求錯誤。
此外,我在Python客戶端嘗試相同。它給我ColumnFamilyNotFoundException.I讀取要從文件傳遞給星際之門服務器的Xml數據。代碼如下。
url = 'http://localhost:8080/mytable/row/fam' f = open('example.xml', 'r') xmlData = f.read() r = requests.post(url, data=xmlData, headers=headers)
的example.xml有以下幾點:
<CellSet>
<Row key="111">
<Cell column="fam:column1">
xyz
</Cell>
</Row>
</CellSet>