mrbear 发表于 2018-12-20 08:47:50

php通过thrift操作hbase

  环境配置
操作系统 centos 5.8    hadoop版本cloudera cdh3u3hbase版本hbase-0.90.4-cdh3u3php版本5.2
1.下载并编译thrift
   # wget http://ftp.tc.edu.tw/pub/Apache/thrift/0.8.0/thrift-0.8.0.tar.gz
   安装所需的依赖包
   # yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel php php-devel
   # tar zxvfthrift-0.8.0.tar.gz
   # cd thrift-0.8.0
    #   ./configure --prefix=/home/thrift --with-php-config=/usr/bin/php-config
# make && make install
2生成php和hbase的接口文件:
    # cd /home/thrift/
   # bin/thrift--gen php $HBASE_HOME/src/main/resources/org/apache/hadoop/hbase/thrift/Hbase.thrift
# cd gen-php/Hbase
# ls
Hbase.phpHbase_types.php

3. 把PHP客户端需要的包及刚才生成的接口文件复制出来供php程序调用:
#mkdir -p/var/www/html/hbasethrift/libs   (/var/www/html为apache的web主目录)
#cp -a /home/soft/thrift-0.8.0/lib/php/src /var/www/html/hbasethrift/libs   
#mkdir -p /var/www/html/hbasethrift/libs/packages
#cp -a /home/thrift/gen-php/Hbase /var/www/html/hbasethrift/libs/packages
4.启动hbase thrift server,测试php连接hbase
# ./bin/hbase-daemon.sh start thrift
hbase thrift 默认监听端口为9090
测试php连接与操作hbase代码
# vi hbasethrift.php



[*]

  通过浏览器访问http://localhost/hbasethrift/hbasethrift.php,如果显示hbase中的表名与新建表table1 ,说明连接成功。
hbase thrift api 参考http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/thrift/doc-files/index.html


参考http://www.banping.com/2011/07/08/hbase-thrift-php/



页: [1]
查看完整版本: php通过thrift操作hbase