使用phoenix連線hbase

2022-10-10 16:48:14 字數 1814 閱讀 6555

hbase本身不支援sql查詢,為了實現這個功能,引入了phoenix,通過它可以實現hbase的sql查詢。這裡記錄下如何配置並使用phoenix來操作hbase。

(1). 解壓檔案tar -zxvf apache-phoenix-4.14.0-hbase-1.1-bin.tar.gz

(2). 拷貝phoenix-4.14.0-hbase-1.1-client.jarphoenix-core-4.14.0-hbase-1.1.jar這兩個檔案到hbase的lib目錄下。

注意:如果hbase是集群模式部署,需要拷貝這兩個檔案到每個hbase的lib目錄下。

(3). 複製hbase-site.xml檔案到phoenix的bin目錄下apache-phoenix-4.14.0-hbase-1.1-bin/bin

(4). 重啟hbase服務(必須重啟hbase服務,否則phoenix將不能正常啟動)

sh stop-hbase.sh

sh start-hbase.sh

進入到phoenix的bin目錄下,執行命令./sqlline.py host:port,其中host是主機名,port為zookeeper埠

如上圖所示,已進入phoenix的控制台。

(1).!tables命令可以檢視有哪些表,注意:只能查詢到通過phoenix建立的表,通過hbase建立的表無法看到

(2). 建立檢視,將hbase上的表對映到phoenix中

#首先在hbase上建立乙個表student,包含乙個列簇info

hbase(main):004:0> create "student","info"

0 row(s) in 2.6890 seconds

=> hbase::table - student

#向student表中插入一行資料

hbase(main):009:0> put "student","001","info:name","tom"

0 row(s) in 0.0250 seconds

hbase(main):010:0> put "student","001","info:age","23"

0 row(s) in 0.0090 seconds

#接下來,進入phoenix的控制台,建立student的檢視

0: jdbc:phoenix:node3:2181> create view "student"(rid varchar primary key,"info"."name" varchar,"info"."age" varchar);

#查詢0: jdbc:phoenix:node3:2181> select * from "student";

+------+-------+------+

| rid | name | age |

+------+-------+------+

| 001 | tom | 23 |

+------+-------+------+

1 row selected (0.326 seconds)

mybatis連線phoenix操作hbase

直接上 configuration public class hbaseconfig bean configurationproperties prefix spring.datasource.druid.hbase public datasource phoenixdatasource bean ...

phoenix建立表連線hbase

如圖,hbase已經存在表 test yuan 當建立表遇到表建立成功但是資料查詢不到 需要新增column encoded bytes 0 create table test yuan row varchar primary key,base famm varchar,base name varc...

phoenix使用指南

phoenix是hbase開源的sql 可以用標準的jdbc api來代替hbase客戶端api來建立表 插入資料和查詢hbase資料。特點 容易整合 如spark hive flume mr 操作簡單 dml命令以及ddl命令 支援hbase二級索引 步驟1 上傳安裝包到 opt software...