Hbase與phoenix關聯


HBase和phoenix安裝好的前提下

一:hbase命令

名稱 命令表達式
查看hbase狀態 status
創建表 create '表名','列族名1','列族名2','列族名N'
查看所有表 list
描述表 describe '表名'
判斷表存在 exists '表名'
判斷是否禁用啟用表

is_enabled '表名'
is_disabled '表名'

添加記錄 put '表名','rowkey','列族:列','值'
查看記錄rowkey下的所有數據 get '表名','rowkey'
查看所有記錄 scan '表名'
查看表中的記錄總數 count '表名'
獲取某個列族 get  '表名','rowkey','列族:列'
獲取某個列族的某個列 get '表名','rowkey','列族:列'
刪除記錄 delete '表名','行名','列族:列'
刪除整行 deleteall '表名','rowkey'
刪除一張表

先要屏蔽該表,才能對該表進行刪除
第一步 disable '表名',第二步 drop '表名'

清空表 truncate '表名'
查看某個表某個列中所有數據 scan '表名',{COLUMNS=>'列族名:列名'}
更新記錄 就是重新一遍,進行覆蓋,hbase沒有修改,都是追加

1.
進入Hbase的bin目錄 /hbase shell
2.在HBase里創建表,命名為YW:
create 'YW', 'INFO'

 

 3.往表里添加數據 PUT '表名','主鍵','列族:字段名','值'

   put 'YW', '001', 'INFO:NAME', 'WeiDong'

  put 'YW', '001', 'INFO:AGE', '27'
  put 'YW', '001', 'INFO:HOME', 'ZhouKou'
  put 'YW', '002', 'INFO:NAME', 'XiaoMeng'
  put 'YW', '002', 'INFO:AGE', '27'
  put 'YW', '002', 'INFO:HOME', 'YuLin'

 

 3.查看表數據 scan '表名'

查看多少條數據 {LIMIT=>10}設置

scan 'YW', {LIMIT=>10}

 根據ROW查詢

get 'YW','001'

 

 

=============================Hbase基本操作完畢==========================================

二:Phoenix 

注意:

1.Phoenix 小寫要加""

2.如果hbase有表就創建視圖即可,表名,字段名要相同保持一致

1. Phoenix的根目錄下連接Phoenix
  /sqlline.py

 

2.查看phoenix表信息

  !tables

 

 3.因為hbase有表我們只需要創建視圖就行 表名,字段名要與hbase保持一致

create view "YW" ("ROW" varchar primary key,"INFO"."NAME" varchar,"INFO"."AGE" varchar,"INFO"."HOME" varchar ); 

 刪除視圖:

 drop view "YW";

 這樣視圖已經創建成功

表數據類型的對應關系

更改表數據類型

upsert into SYSTEM.CATALOG (TENANT_ID,TABLE_SCHEM,TABLE_NAME,COLUMN_NAME,COLUMN_FAMILY,DATA_TYPE) values('','','YW','AIBT','INFOR',12);

 

 

3.查看視圖結構

  !describe YW

 

 4. 現在可以查詢數據了

  select * from YW;

 

 到此hbase和phoenix關聯已經結束

要點: phoenix創建表或視圖時,表結構要與hbase保持一致

如果想可視化查看的話有多種方式,目前我用apache的zeppelin數據分析的框架進行可視化,搭建教程略。。。。自行百度即可。

可視化的樣子大致如下:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM