Phoenix凤凰-SQL ON HBase入门

本文介绍了如何在已部署的HBase环境中,进行Apache Phoenix的部署。首先从官网下载对应版本的phoenix安装包并解压,然后将phoenix的server.jar复制到HBase的lib目录下。接着,在HBase的hbase-site.xml中添加配置参数,并重启HBase使配置生效。最后,通过创建软链接指向hbase-site.xml,并使用sqlline.py启动Phoenix,验证部署成功。
摘要由CSDN通过智能技术生成

phoenix官网:phoenix.apache.org

Apache Phoenix enables OLTP and operational analytics in Hadoop for low latency applications by combining the best of both worlds:

  • the power of standard SQL and JDBC APIs with full ACID transaction capabilities and
  • the flexibility of late-bound, schema-on-read capabilities from the NoSQL world by leveraging HBase as its backing store

Apache Phoenix is fully integrated with other Hadoop products such as Spark, Hive, Pig, Flume, and Map Reduce.

1部署

注:此部署在已部署完HBase的前提下操作,直接使用官网提供的安装包phoenix-4.14.0-cdh5.14.2 。我的hadoop 环境是cdh5.16.1 ,可以在官网下载cdh版本的安装包,如果没有对应的cdh版本,可以选择与hadoop安装环境最接近的版本。我这里使用伪分布式安装部署。

1.1下载并解压安装包

[hadoop@hadoop001 software]$ tar -xzvf  apache-phoenix-4.14.0-cdh5.14.2-bin.tar.gz -C ../app/
[hadoop@hadoop001 software]$ cd ../app/
[hadoop@hadoop001 app]$ ln -s apache-phoenix-4.14.0-cdh5.14.2-bin phoenix

1.2配置phoenix和HBase    

[hadoop@hadoop001 phoenix]$ cd /home/hadoop/app/phoenix
[hadoop@hadoop001 phoenix]$ ①cp phoenix-4.14.0-cdh5.14.2-server.jar ../hbase/lib/      

[hadoop@hadoop001 phoenix]$ cd ../
[hadoop@hadoop001 app]$ cd hbase
[hadoop@hadoop001 hbase]$ cd conf/
[hadoop@hadoop001 conf]$ ②vi hbase-site.xml

添加以下配置参数:

<property>
    <name>hbase.table.sanity.checks</name>
    <value>false</value>
</property>
<property>
    <name>hbase.regionserver.wal.codec</name>
    <value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
</property>
<property>
    <name>phoenix.schema.isNamespaceMappingEnabled</name>
    <value>true</value>
</property>
<property>
    <name>phoenix.schema.mapSystemTablesToNamespace</name>
    <value>true</value>
</property>

[hadoop@hadoop001 hbase]$ bin/stop-hbase.sh   ③重启生效以上参数和jar包
[hadoop@hadoop001 hbase]$ bin/start-hbase.sh

hadoop@hadoop001 hbase]$ jps  检查是否成功启动HBASE

[hadoop@hadoop001 hbase]$ cd ../phoenix
[hadoop@hadoop001 phoenix]$ cd bin
[hadoop@hadoop001 bin]$ ll

[hadoop@hadoop001 bin]$ rm -f hbase-site.xml 
[hadoop@hadoop001 bin]$ ④ln -s /home/hadoop/app/hbase/conf/hbase-site.xml hbase-site.xml
 

[hadoop@ruozedata001 bin]$ python -V
Python 2.7.5
[hadoop@ruozedata001 bin]$⑤ ./sqlline.py hadoop001:2181  启动phoenix

133/133 (100%) Done
Done
sqlline version 1.2.0
0: jdbc:phoenix:ruozedata001:2181>   出现这个表明部署成功

使用 !table 可以查看到phoenix 在HBase 中建的表

!help可以查看帮助信息

phoenix伪分布式部署非常简单,如果是HA环境,需要把core-site.xml 、hdfs-site.xml ln -s 链接到$PHOENIX_HOME/bin/

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值