最新的CDH6.2開始就支持Phoenix5的parcel版本了,記錄一下安裝和使用,我這裏使用本地離線安裝的方式。
如果需要在CDH5版本安裝phoenix4請參考我之前的文章:CDH5.14集羣下Phoenix4.14.0安裝及性能對比phoenix/impala/hive
官方文檔:https://docs.cloudera.com/documentation/enterprise/6/latest/topics/phoenix_installation.html
Phoenix的優勢:
1.支持使用SQL查詢Hbase
2.支持二級索引,事務,UDF,分頁查詢
3.支持完整的ACID事務
4.支持java、python的Driver
5.與MapReduce,spark,hive,pig,kafka,flume整合的很好
基於以上phoenix的特點可用於實現HTAP。
1.下載
https://archive.cloudera.com/phoenix/6.2.0/parcels/
https://archive.cloudera.com/phoenix/6.2.0/csd/
提前下載下面幾個文件並放置在cdh主節點的/var/www/html下,PHOENIX-1.0.jar放置在/opt/cloudera/csd下
manifest.json
PHOENIX-5.0.0-cdh6.2.0.p0.1308267-el6.parcel
PHOENIX-5.0.0-cdh6.2.0.p0.1308267-el6.parcel.sha
PHOENIX-1.0.jar
2.啓動httpd
systemctl start httpd
如果已啓動則不需要再啓動,訪問主節點ip/phoenix看是否啓動成功,若出現下面的界面則成功。
如果沒有httpd就使用yum安裝一下:
安裝httpd:
yum install -y httpd
3.使用parcel安裝Phoenix5
在CM中選擇主機->Parcel-->配置.如果有未安裝的parcel包,可以直接看到,選擇它然後點擊保存,點擊'分配'-->'激活'.
4.CM中添加Phoenix服務
1.先確定CSD配置目錄是否是上面說的/opt/cloudera/csd,在CM中選擇管理-->設置,搜索csd。
剛纔第一步把下載的PHOENIX-1.0.jar放置在/opt/cloudera/csd下了,所以我們直接重啓CM服務.
systemctl restart cloudera-scm-server
重新登錄CM,重啓Cloudera Management Service過期配置服務。
此時可以看到Phoenix已經出現在CM的管理頁面:
5.配置HBASE
在之前的文章中我們知道phoenix是在hbase上實現了SQL接口,並且手工安裝開源版phoenix的時候也需要在hbase節點的lib目錄下放置phoenix的jar包,通過CM安裝就免去這些手工的工作。
在Hbase-->配置 中搜索hbase-site,然後在"hbase-site.xml 的 HBase 服務高級配置代碼段" 中配置如下內容。
或點擊以XML格式查看,輸入下面的代碼:
<property>
<name>hbase.regionserver.wal.codec</name>
<value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
</property>
<property>
<name>phoenix.functions.allowUserDefinedFunctions</name>
<value>true</value>
<description>enable UDF functions</description>
</property>
修改完成後重啓hbase服務。
6.啓動Phoenix驗證
啓動phoenix命令行:
/opt/cloudera/parcels/PHOENIX/bin/phoenix-sqlline hbase節點1,hbase節點2,hbase節點3..
下一篇講解如何使用phoenix映射hbase表及使用。