Hbase与phoenix关联
HBase和phoenix安装好的前提下
一:hbase命令
名称 | 命令表达式 |
查看hbase状态 | status |
创建表 | create '表名','列族名1','列族名2','列族名N' |
查看所有表 | list |
描述表 | describe '表名' |
判断表存在 | exists '表名' |
判断是否禁用启用表 |
is_enabled '表名' |
添加记录 | put '表名','rowkey','列族:列','值' |
查看记录rowkey下的所有数据 | get '表名','rowkey' |
查看所有记录 | scan '表名' |
查看表中的记录总数 | count '表名' |
获取某个列族 | get '表名','rowkey','列族:列' |
获取某个列族的某个列 | get '表名','rowkey','列族:列' |
删除记录 | delete '表名','行名','列族:列' |
删除整行 | deleteall '表名','rowkey' |
删除一张表 |
先要屏蔽该表,才能对该表进行删除 |
清空表 | 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数据分析的框架进行可视化,搭建教程略。。。。自行百度即可。
可视化的样子大致如下: