python hbase_Python操作Hbase
Python操作Hbase的增刪改查操作
增改數據put, row操作
put(row, data, timestamp=None, wal=True)---> 插入數據,無返回值
row---> 行,插入數據的時候需要指定;
data---> 數據,dict類型,{key:value}構成,列與值均為str類型
timestamp--->時間戳,默認None,即寫入當前時間戳
wal---> 是否寫入wal, 默認為True
import
In [8]: conn = happybase.Connection("192.168.14.1",9090)
In [9]: table = conn.table("zhy")
# 向表中增添數據,需要制定rowkey和一個字典形式的鍵值對
In [11]: table.put("test2",{"info:data":"22222"})
# 通過指定列簇來檢索數據
In [12]: row = table.row("test2")
In [13]: print row
{'info:data': '22222'}
In [14]: table.put("test3",{"info:data":"33333"})
In [15]: row = table.row("test3")
In [16]: print row
{'info:data': '33333'}
In [20]: table.put("test2",{"info:content":"33333"})
In [21]: row = table.row("test2")
In [22]: print row
{'info:content': '33333', 'info:data': '22222'}
# 檢索多行數據
In [23]: rows = table.rows(["test2","test3"])
In [24]: print rows
[('test2', {'info:content': '33333', 'info:data': '22222'}), ('test3', {'info:data': '33333'})]
刪除操作
table.delete("rowkey")---->刪除一整行數據
table.delete("rowkey", columns=["info:xxx",...])---->刪除一個列簇中幾個列的數據
In [27]: table.delete("test3")
In [28]: row = table.row("test3")
In [29]: print row
{}
In [35]: row = table.row("test2")
In [36]: print row
{'info:content': '333333', 'info:data': '22222'}
In [37]: table.delete("test2", columns=["info:content"])
In [38]: row = table.row("test2")
In [39]: print row
{'info:data': '22222'}
全局查詢操作scan()方法
可用于遍歷查詢表中的數據的數量
可以指定開始和結束的row key來進行局部查詢
可以通過制定前綴來進行匹配查詢
for key, value in table.scan():
print key,value
# 指定row_start和row_stop參數來設置開始和結束掃描的row key
for key, value in table.scan(row_start='www.test2.com', row_stop='www.test3.com'):
print key, value
# 通過row_prefix參數來設置需要掃描的row key
for key, value in table.scan(row_prefix='www.test'):
print key, value
總結
以上是生活随笔為你收集整理的python hbase_Python操作Hbase的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么样查询自己名下有没有信用卡,有以下三
- 下一篇: python中奇数怎么表示_如何在pyt