通过thrift,我们可以使用python访问hbase。
关于thrift
thrift是一个跨语言服务的软件开发框架(Thrift is a software framework for scalable cross-language services development.)。
它的官方网站是:http://incubator.apache.org/thrift/
下载thrift
svn co http://svn.apache.org/repos/asf/incubator/thrift/trunk thrift
安装thritf(Linux)
cd thrift
./bootstrap.sh
./configure
make
make install
生成hbase的client代码
cd $HBASE_HOME/src/java/org/apache/hadoop/hbase/thrift
thrift --gen py Hbase.thrift
然后将生成的gen-py文件夹下的hbase文件夹拷贝到
/usr/lib/python2.5/site-packages/
准备hbase
首先确认hbase正常工作,然后启动hbase的thrift服务:
$HBASE_HOME//bin/hbase-deamon.sh start thrift
OK,准备工作到此为止,我们开始编写python客户程序。
假设我们需要一个表保存从网上抓取下来的网页。
表命名为"webpages"
它使用网页的url反转后作为行标识符,使用列组"contents:"(注意结尾的冒号)保存网页的内容。
导入需要的模块:
建立与hbase的连接:
创建表:
写入数据:
完整的代码和单元测试如下: