Phoenix快速入門系列(1) | 一文帶你瞭解Phoenix及安裝過程(超詳細!!!)

  大家好,我是不溫卜火,是一名計算機學院大數據專業大二的學生,暱稱來源於成語—不溫不火,本意是希望自己性情溫和。作爲一名互聯網行業的小白,博主寫博客一方面是爲了記錄自己的學習過程,另一方面是總結自己所犯的錯誤希望能夠幫助到很多和自己一樣處於起步階段的萌新。但由於水平有限,博客中難免會有一些錯誤出現,有紕漏之處懇請各位大佬不吝賜教!暫時只有csdn這一個平臺,博客主頁:https://buwenbuhuo.blog.csdn.net/

  此篇爲大家帶來的是一文帶你瞭解Phoenix及安裝過程。

安裝所需壓縮包,如有需要可自行下載
鏈接:https://pan.baidu.com/s/1RO3xpyyexrDaLDb_LtGaMw
提取碼:gzi3


20

一. Phoenix

1

1. 定義

  Phoenix 最早是 saleforce 的一個開源項目,後來成爲 Apache 的頂級項目。
  Phoenix 構建在 HBase 之上的開源 SQL 層. 能夠讓我們使用標準的 JDBC API 去建表, 插入數據和查詢 HBase 中的數據, 從而可以避免使用 HBase 的客戶端 API.
  在我們的應用和 HBase 之間添加了 Phoenix, 並不會降低性能, 而且我們也少寫了很多代碼.

2. 特點

  1. 將 SQl 查詢編譯爲 HBase 掃描
  2. 確定掃描 Rowkey 的最佳開始和結束位置
  3. 掃描並行執行
  4. 將 where 子句推送到服務器端的過濾器
  5. 通過協處理器進行聚合操作
  6. 完美支持 HBase 二級索引創建
  7. DML命令以及通過DDL命令創建和操作表和版本化增量更改。
  8. 容易集成:如Spark,Hive,Pig,Flume和Map Reduce。

3. 架構

2

4. 數據存儲

  Phoenix 將 HBase 的數據模型映射到關係型世界
3

5. hbase和phoenix的對應關係

hbase phoenix
namespace database(庫)
table table(表)
column family cf:cq
column quliafier column quliafier
rowkey 主鍵

在sql中如建表時,指定的主鍵是聯合主鍵(由多個列共同作爲主鍵),
在hbase中,rowkey就是多個主鍵共同拼接的結果!

二. 安裝詳解

[bigdata@hadoop002 software]$ tar -zxvf apache-phoenix-4.14.2-HBase-1.3-bin.tar.gz -C /opt/module

[bigdata@hadoop002 module]$ mv apache-phoenix-4.14.2-HBase-1.3-bin phoenix

5

  • 3. 複製 jar 包
[bigdata@hadoop002 phoenix]$ cp phoenix-4.14.2-HBase-1.3-server.jar /opt/module/hbase/lib

[bigdata@hadoop002 phoenix]$ cp phoenix-4.14.2-HBase-1.3-client.jar /opt/module/hbase/lib
  • 4. 分發 jar 包
    需要把剛纔 copy 的 2個jar 包分發到其他 HBase 節點
scp -r phoenix-4.14.2-HBase-1.3-server.jar hadoop003:/opt/module/hbase/lib
scp -r phoenix-4.14.2-HBase-1.3-client.jar hadoop003:/opt/module/hbase/lib

scp -r phoenix-4.14.2-HBase-1.3-server.jar hadoop004:/opt/module/hbase/lib
scp -r phoenix-4.14.2-HBase-1.3-client.jar hadoop004:/opt/module/hbase/lib

6

  • 5. 配置環境變量
[bigdata@hadoop002 phoenix]$ sudo vim /etc/profile
# phoenix_home
export PHOENIX_HOME=/opt/module/phoenix
export PHOENIX_CLASSPATH=$PHOENIX_HOME
export PATH=$PATH:$PHOENIX_HOME/bin

// 使立即生效
[bigdata@hadoop002 phoenix]$ source /etc/profile
  • 6. 啓動 hadoop, zookeeper, HBase
[bigdata@hadoop002 phoenix]$ start-dfs.sh 
[bigdata@hadoop003 module]$ start-yarn.sh 
[bigdata@hadoop002 phoenix]$ ../zookeeper-3.4.10/bin/start-allzk.sh 
[bigdata@hadoop002 phoenix]$ start-hbase.sh 

7

  • 7. 啓動 Phoenix
[bigdata@hadoop002 phoenix]$ bin/sqlline.py hadoop002:2181

8

  • 8. 退出
0: jdbc:phoenix:hadoop002:2181> !quit

  本次的分享就到這裏了,


11

  好書不厭讀百回,熟讀課思子自知。而我想要成爲全場最靚的仔,就必須堅持通過學習來獲取更多知識,用知識改變命運,用博客見證成長,用行動證明我在努力。
  如果我的博客對你有幫助、如果你喜歡我的博客內容,請“點贊” “評論”“收藏”一鍵三連哦!聽說點讚的人運氣不會太差,每一天都會元氣滿滿呦!如果實在要白嫖的話,那祝你開心每一天,歡迎常來我博客看看。
  碼字不易,大家的支持就是我堅持下去的動力。點贊後不要忘了關注我哦!

13
12

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章