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数据分析的框架进行可视化,搭建教程略。。。。自行百度即可。

可视化的样子大致如下:

posted @ 2020-01-13 16:25  愿无违  阅读(745)  评论(0编辑  收藏  举报