主要是根据实际情况整合了网上的一些相关资料。
简介
Phoenix是构建在Apache HBase(列式大数据存储)之上的一个SQL中间层。Phoenix完全使用Java编写,代码 位于GitHub上,并且提供了一个客户端可嵌入的JDBC驱动。根据项目所述,Phoenix被Salesforce.com内部使用,对于简单的低延迟查询,其量级为毫秒;对于百万级别的行数来说,其量级为秒。Phoenix并不是像HBase那样用于map-reduce job的,而是通过标准化的语言来访问HBase数据的。根据项目创建者所述, 对于10M到100M的行的简单查询来说,Phoenix要胜过Hive。对于使用了HBase API、协同处理器及自定义过滤器的Impala与OpenTSDB来说,进行相似的查询Phoenix的速度也会更快一些。
一、版本
Hadoop:hadoop 2.6.0-cdh5.10.0
Hive:hive-common-1.1.0-cdh5.10.0.jar
Hbase:hbase 1.2.0-cdh5.10.0
之前的Phoenix版本并不能很好的和HBase的CDH版本进行继承,要想使用Phoenix的话需要对其进行重新编译,但最近Phoenix发布了4.13.1-cdh5.11.2版本,经初步测试可以不进行修改直接用于cdh5.10.0版本。
二、下载安装
①下载地址:https://phoenix.apache.org/download.html , 版本:apache-phoenix-4.13.2-cdh5.11.2-bin.tar.gz,解压并上传到集群任一服务器,如slave02。
②在安装了Phoenix的服务器slave02上配置环境变量
③复制其中的phoenix-[version]-server.jar到所有 region server 和master上hbase/lib路径下
④将集群上的配置文件hbase-site.xml、 core-site.xml 、hdfs-site.xml放到phoenix-*/bin/下,替换Phoenix原来的配置文件。