hadoop2.2.0 和 hbase0.94.12 平台使用phoenix
来源:互联网 发布:大数据 风险管理 编辑:程序博客网 时间:2024/04/28 07:20
phoenix使hbase的数据可以通过sql语句进行操作,提供查询对话框和类jdbc的java中间件,非常方便。
phoenix 的wiki:https://github.com/forcedotcom/phoenix/wiki
phoenix的github:https://github.com/forcedotcom/phoenix
目前,phoenix不支持hbase0.96版本,推荐版本是hbase0.94.12版本。但是,估计到2014年的二月份的中旬会发布支持hbase0.96的port-0.96版本,可以关注一下。
https://github.com/forcedotcom/phoenix/issues/349
所以,目前只能使用0.94版的hbase进行测试一下。
我们使用的hadoop是2.2.0版本的,直接使用从apache下载的hbase0.94版本不支持hadoop2.2.0
所以,需要自己重新编译一下。源码从svn上下载,svn上有各种版本,我们就用phoenix推荐的版本吧。
svn co http://svn.apache.org/repos/asf/hbase/tags/0.94.12/ hbase-0.94.12
编译源码,支持hadoop2.0版本:mvn package -DskipTests -Dhadoop.profile=2.0编译完成,部署hbase:
1、解压hbase-0.94.12.tar.gz,设置HBASE_HOME
2、将${HBASE_HOME}/lib 的hadoop-*.jar 删除,将$HADOOP_HOME/share/hadoop 下的jar包拷贝到$HBASE_HOME/lib 目录下。否则,会报下面的错误:
java.io.IOException: Failed on local exception: com.google.protobuf.InvalidProtocolBufferException: Message missing required fields:
3、将${HBASE_HOME}/lib/protobuf-java-2.4.0a.jar 删除,否则报下面的错误:
java.lang.VerifyError: class org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$AppendRequestProto overrides final method getUnknownFields.()Lcom/google/protobuf/UnknownFieldSet;
4、将$HADOOP_HOME/etc/hadoop/ 下的core-site.xml 和 hdfs-site.xml文件拷贝到$HBASE_HOME/conf 目录下
5、解压phoenix-2.2.1-install.tar,将phoenix-2.2.1.jar拷贝到所有regionserver的$HBASE_HOME/lib目录下,将$HBASE_HOME/conf 文件拷贝到phoenix下。
至此,整个环境部署完毕,测试一下:
sqlline.sh localhost如果出现下面提示,说明成功连接到hbase:
2013-12-26 15:40:14,229 INFO [main-EventThread] zookeeper.ClientCnxn: EventThread shut down36/36 (100%) Done
开始 sql on hbase
sql语法:http://forcedotcom.github.io/phoenix/
- hadoop2.2.0 和 hbase0.94.12 平台使用phoenix
- Phoenix实战(hadoop2、hbase0.96)
- phoenix实战(hadoop2、hbase0.96)
- Phoenix 4.3.0 与 Hbase0.98.10-hadoop2的整合
- HBase0.94和Hadoop2 结合
- Phoenix 4.3.0 与 Hbase0.98.10-hadoop2的整合,hbase0.98
- Hbase0.96.0 +hadoop2.2.0安装
- hadoop2.20 和 hbase0.96 metrics 配置
- hadoop2.2.0 hbase0.96 安装snappy
- Hadoop2.2.0 + HBase0.96.1.1部署实践
- HBase0.96.0 for Hadoop2.2.0编译
- HBase0.96.0 for Hadoop2.2.0编译
- HBase0.96.2安装说明(hadoop2.2.0)
- Hadoop2.2.0 + HBase0.96 伪分布式安装
- Hadoop2.7.0学习——phoenix-4.8.0和squirrel的安装及使用
- hbase0.94.14+hadoop2.6.0
- hadoop2.5.0和hbase0.98完全分布式安装
- Hadoop2.7.1和Hbase0.98添加LZO压缩
- jfinal停止和启动时调用方法
- 路由器、交换机与防火墙的联接
- Android之实现手电筒实例
- FinalDB介绍
- android -- ContextMenu 的使用 和 OptionsMenu 区别
- hadoop2.2.0 和 hbase0.94.12 平台使用phoenix
- Nginx安装
- php中print_r、var_dump和var_export几个函数的用法区别
- UltraEdit 操作小技巧--一次性修改多列
- 如何让网站被百度快速收录
- onMeasure(int widthMeasureSpec, int heightMeasureSpec)
- 编译appche http server:
- 8、手机防盗--通过拨号进入手机防盗
- MFC中通过Tooltip类来实现悬浮鼠标显示提示信息