phoenix安装
一、关于Phoenix
Phoenix最早是saleforce的一个开源项目,后来成为 Apache 基金的顶级项目。
Phoenix是构建在HBase上的一个SQL层,能让我们用标准的JDBC APIs而不是HBase客户端APIs来创建表,插入数据和对HBase数据进行查询。
Phoenix完全使用 Java 编写,作为HBase内嵌的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase扫描,并编排执行以生成标准的JDBC结果集。
直接使用HBase API、协同处理器与自定义过滤器,对于简单查询来说,其性能量级是毫秒,对于百万级别的行数来说,其性能量级是秒。
HBase的查询 工具 有很多,如:Hive、Tez、Impala、Spark SQL、Phoenix等。
Phoenix通过以下方式使我们可以少写代码,并且性能比我们自己写代码更好:
* 将SQL编译成原生的HBase scans。
* 确定scan关键字的最佳开始和结束
* 让scan并行执行
1、集群情况说明
centos7,三台节点;
版本:
hadoop-2.7.3
hbase-1.2.6
2、下载
官网:https://phoenix.apache.org/
Phoenix支持的sql语句: https://phoenix.apache.org/language/index.html
Phoenix 支持的DataTypes:https://phoenix.apache.org/language/datatypes.html
Phoenix 支持的函数:https://phoenix.apache.org/language/functions.html
下载地址:
http://archive.apache.org/dist/phoenix/
说明:
要下载与安装的HBase版本对应的版本。
我本地使用的hbase1.2.6,所以下载的apache-phoenix-4.11.0-HBase-1.2-bin.tar.gz
三、安装
1、解压
# 我是安装到node1的/opt下(node1是master)
[root@node1 opt]# cd /opt
[root@node1 opt]# tar zxf package/apache-phoenix-4.11.0-HBase-1.2-bin.tar.gz -C ./
[root@node1 opt]# mv apache-phoenix-4.11.0-HBase-1.2-bin phoenix-4.11.0
2、复制jar包和文件
#把Phoenix中的相关jar包复制到hbase的lib中
[root@node1 opt]# cd phoenix-4.11.0/
[root@node1 phoenix-4.11.0]# cp phoenix-core-4.11.0-HBase-1.2.jar /opt/hbase-1.2.6/lib/
[root@node1 phoenix-4.11.0]# scp phoenix-core-4.11.0-HBase-1.2.jar node2:/opt/hbase-1.2.6/lib/
[root@node1 phoenix-4.11.0]# scp phoenix-core-4.11.0-HBase-1.2.jar node3:/opt/hbase-1.2.6/lib/
#把hbase和hadoop的文件复制到Phoenix的bin下
[root@node1 phoenix-4.11.0]# cp /opt/hbase-1.2.6/conf/hbase-site.xml ./bin/ #覆盖
[root@node1 phoenix-4.11.0]# cp /opt/hadoop-2.7.3/etc/hadoop/core-site.xml ./bin/
[root@node1 phoenix-4.11.0]# cp /opt/hadoop-2.7.3/etc/hadoop/hdfs-site.xml ./bin/
四、启动
[root@node1 ~]# /opt/phoenix-4.11.0/bin/sqlline.py node1 #node1是指定的zookeeper
......
......
0: jdbc:phoenix:node1>
0: jdbc:phoenix:node1> !table #列出表
0: jdbc:phoenix:node1> !help #查看帮助