天天看點

[Phoenix基礎]-- Phonenix安裝(簡化hbase的工具)

Phonenix是簡化hbase的sql的工具,在linux的指令行實作sql簡化

1.下載下傳phonenix(注意:需要下載下傳對應hbase的版本)

下載下傳位址​​http://mirrors.cnnic.cn/apache/phoenix/​​

下載下傳hbase相應的版本的phonenix

[Phoenix基礎]-- Phonenix安裝(簡化hbase的工具)

2.解壓

解壓相應的包 ,比如phoenix-4.6.0-HBase-0.98-bin.tar.gz

将解壓後的包裡的phoenix-core-4.6.0-HBase-0.98.jar拷貝到叢集各個節點HBase的lib目錄下,這裡的包看版本了,記住字首是phoenix-core的包,如果這裡有phonenix舊的包需要先删掉

将此包複制到其他兩(h16,h17)個hbase目錄下

#scp phoenix-core-4.6.0-HBase-0.98.jar root@h15:/home/hbase-0.98/lib/

#scp phoenix-core-4.6.0-HBase-0.98.jar root@h16:/home/hbase-0.98/lib/

#scp phoenix-core-4.6.0-HBase-0.98.jar root@h17:/home/hbase-0.98/lib/

[Phoenix基礎]-- Phonenix安裝(簡化hbase的工具)

3.重新開機叢集

在h15上重新開機hbase叢集

#sh stop-hbase.sh

#sh start-hbase.sh

4.啟動phonenix

進入到解壓好的phonenix目錄下執行指令:

# bin/sqlline.py h15:2181

這裡的master是zookeeper叢集的節點的hostname,不建議使用ip

如果端口是2181,端口也可以省略

進入如下界面,說明成功了

[Phoenix基礎]-- Phonenix安裝(簡化hbase的工具)

執行指令#!tables出現如下界面

[Phoenix基礎]-- Phonenix安裝(簡化hbase的工具)

5\在h15上建表

#CREATE TABLE my_table ( id INTEGER not null primary key desc, date DATE, m.db_utilization DECIMAL, i.db_utilization DECIMAL);

建立序列:create sequence t_seq;

插入資料:

#UPSERT INTO my_tableVALUES(1,'2015-09-10 12:23:00');

#UPSERT INTO my_table VALUES(3,'2015-09-10 12:23:00');

#UPSERT INTO my_table VALUES(4,'2015-09-10 12:23:00');

#UPSERT INTO my_table VALUES(5,'2015-09-10 12:23:00');

#UPSERT INTO my_table VALUES(6,'2015-09-10 12:23:00');

#UPSERT INTO my_table VALUES(7,'2015-09-10 12:23:00');

#UPSERT INTO my_table VALUES(8,'2015-09-10 12:23:00');

查詢資料

#select * from my_table order by id asc ;

插入資料:準備java測試

CREATE TABLE  TMP_TRAVEL (ROWKEY VARCHAR PRIMARY KEY,INFO.SP VARCHAR,INFO.EP VARCHAR,INFO.ST VARCHAR,INFO.ET VARCHAR);

CREATE SEQUENCE SEQ;

CREATE TABLE TRAVEL (ROWKEY VARCHAR PRIMARY KEY,INFO.SP VARCHAR,INFO.EP VARCHAR,INFO.ST VARCHAR,INFO.ET VARCHAR,PAGEID BIGINT);

UPSERT INTO TRAVEL SELECT ROWKEY,SP,EP,ST,ET,NEXT VALUE FOR SEQ FROM TMP_TRAVEL;

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160201112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160202112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160203112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160204112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160205112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160206112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160207112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160208112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160209112343','北京','海澱區','20160203');

UPSERT INTO TMP_TRAVEL VALUES('16357298756_20160210112343','北京','海澱區','20160203');

如果都是正常,那麼通過!