文章目录
-
- Linux下安装Python环境
-
- 安装依赖环境
- 下载升级版本的bison
- 解压
- 进入bison安装目录执行配置脚本
- 编译
- 安装
- 下载python安装环境(3.6更具兼容性)
- 解压
- 进入python文件夹,生成编译脚本(指定安装目录)
- 编译
- 安装
- 建立软连接,便于直接使用命令
- 验证python3配置完毕
- 安装thift
-
- 安装python的thrift库使支持Thrift协议
- 下载安装thift依赖包
- 下载thift 0.9.3
- 解压
- 进入thrift安装目录,执行配置脚本
- 编译
- 安装
- 生成thrift的python编译版
-
- 下载hbase源码版
- 解压
- 进入存有hbase.thrift的目录下
- 使用thrift编译hbase.thrift
- 拷贝gen-py目录下的hbase目录到python的安装目录里的site-packages目录下
- 进入site-packages目录下的hbase目录,修改Hbase.py和constant.py文件(python3需要)
- 启动thrift服务
-
- 验证是否启动thrift服务
- thrfit使用问题汇总
实验环境:CentOS6.7,Hadoop2.7.3,HBase1.2.5,zookeeper3.4.6
Linux下安装Python环境
安装依赖环境
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum -y install gcc
由于yum安装的bison版本兼容性问题后面会出现报错
checking for bison version >= 2.5… no
configure: error: Bison version 2.5 or higher must be installed on the system!
故需下载升级版本的bison
下载升级版本的bison
wget http://ftp.gnu.org/gnu/bison/bison-2.5.1.tar.gz
解压
tar xvf bison-2.5.1.tar.gz
进入bison安装目录执行配置脚本
./configure
编译
make
安装
make install
下载python安装环境(3.6更具兼容性)
https://www.python.org/ftp/python/
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
解压
tar xvf Python-3.6.6.tgz
进入python文件夹,生成编译脚本(指定安装目录)
./configure --prefix=/usr/local/python3
编译
make
安装
make install
建立软连接,便于直接使用命令
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
验证python3配置完毕
python3 -V
pip3 -V
安装thift
安装python的thrift库使支持Thrift协议
pip3 install thrift
下载安装thift依赖包
yum install -y automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel openssl-devel
下载thift 0.9.3
wget http://apache.fayea.com/thrift/0.9.3/thrift-0.9.3.tar.gz
上面的无法链接时,用下边的命令下载
wget http://mirrors.cnnic.cn/apache/thrift/0.9.3/thrift-0.9.3.tar.gz
解压
tar xvf thrift-0.9.3.tar.gz
进入thrift安装目录,执行配置脚本
./configure
编译
make
安装
make install
生成thrift的python编译版
下载hbase源码版
wget http://archive.apache.org/dist/hbase/1.2.5/hbase-1.2.5-src.tar.gz
解压
tar xvf hbase-1.2.5-src.tar.gz
进入存有hbase.thrift的目录下
cd hbase-1.2.5/hbase-thrift/src/main/resources/org/apache/hadoop/hbase/thrift/
使用thrift编译hbase.thrift
thrift --gen py Hbase.thrift
拷贝gen-py目录下的hbase目录到python的安装目录里的site-packages目录下
cp -r hbase /usr/local/python3/lib/python3.6/site-packages/
进入site-packages目录下的hbase目录,修改Hbase.py和constant.py文件(python3需要)
from ttypes import *
改为
from hbase.ttypes import *
再次修改Hbase.py和ttypes.py文件,然后找到该目录后,将虚拟机文件转到本地主机,使用记事本打开文件,按Ctrl+H快捷键,替换xrange为range和__dict__.iteritems为__dict__.items后保存
也可直接下载下面文件覆盖修改Hbase.py,constants.py,ttypes.py文件
下载链接
启动thrift服务
hbase-daemon.sh start thrift
验证是否启动thrift服务
thrfit使用问题汇总
Pycharm无法连接本机hbase
使用本机pycharm连接虚拟机的hbase时,首先需要与虚拟机相互ping通,若未能ping通,可能是虚拟机的网络适配器和虚拟机不处于同一网段,需配置如下
步骤如下:
连接hbase时报错
解决:
hbase没有启动thrift服务
hbase-dameon.sh start thrfit
使用metateRow()函数,插入行数据时报错
解决:
Hbase表中需要已定义相应列族才能插入数据,需定义好后再插入