Python连接Hbase操作

Python连接Hbase主要借助第三方软件thrift实现,具体操作步骤:
1)安装thrift
wget http://mirror.bit.edu.cn/apache/thrift/0.10.0/thrift-0.10.0.tar.gz
tar zvxf hrift-0.10.0.tar.gz
cd hrift-0.10.0
./configer
sudo make && make install
thrift -version

2)安装Python依赖包
使hbase支持thrift (生成hbase包)
关键步骤(hbase版本>0.95+ 可能存在hbase_home路径下找不到Hbase.thrift文件问题,可通过pip install hbase-thrift 解决 )
thrift –gen py hbase_home/src…./thrift/Hbase.thrift (生成文件复制到Python包路径下,方便调用)
pip install thrift (安装thrift包)
pip install hbase-thrift (可选)

3)thrift服务端启动
cd hbase_home/bin
hbase-daemon.sh start thrift (默认端口是9090)

案例:( hbase建表及插入数据操作)

from thrift import Thrift
from thrift.transport import TSocket,TTransport
from thrift.protocol import TBinaryProtocol
from hbase import Hbase
from hbase.ttypes import *
transport = TSocket.TSocket(‘192.168.1.131’,9090)
transport = TTransport.TBufferedTransport(transport)
protocol = TBinaryProtocol.TBinaryProtocol(transport)
client = Hbase.Client(protocol)
transport.open()
建表
contents = ColumnDescriptor(name=’cf:’, maxVersions=1)
client.createTable(‘test’, [contents])
print client.getTableNames()
插入数据
row = ‘row-key1’
value = [Mutation(column=”cf:a”,value=”hello”)]
client.mutateRow(‘test_liuh’,row,value)
result =client.getRow(‘test_liuh’,row)
print result

你可能感兴趣的:(python)