赞
踩
Hbase适合存储大量的对关系运算要求低的NOSQL数据,受Hbase 设计上的限制不能直接使用原生的API执行在关系数据库中普遍使用的条件判断和聚合等操作。Hbase很优秀,一些团队寻求在Hbase之上提供一种更面向普通开发人员的操作方式,Apache Phoenix即是。
Phoenix 基于Hbase给面向业务的开发人员提供了以标准SQL的方式对Hbase进行查询操作,并支持标准SQL中大部分特性:条件运算,分组,分页,等高级查询语法。
下载安装包:官网地址
上传解压修改名称等
将jar包复制到所有节点的hbase lib目录下
配置环境变量
启动hbase
start-hbase.sh
启动 Phoenix
sqlline.py master,node1,node2
# 1、创建表 CREATE TABLE IF NOT EXISTS STUDENT ( id VARCHAR NOT NULL PRIMARY KEY, name VARCHAR, age BIGINT, gender VARCHAR , clazz VARCHAR ); # 2、显示所有表 !table # 3、插入数据 upsert into STUDENT values('1500100004','葛德曜',24,'男','理科三班'); upsert into STUDENT values('1500100005','宣谷芹',24,'男','理科六班'); upsert into STUDENT values('1500100006','羿彦昌',24,'女','理科三班'); # 4、查询数据,支持大部分sql语法, select * from STUDENT ; select * from STUDENT where age=24; select gender ,count(*) from STUDENT group by gender; select * from student order by gender; # 5、删除数据 delete from STUDENT where id='1500100004'; # 6、删除表 drop table STUDENT; # 7、退出命令行 !quit
更多语法参照官网:官网语法地址
默认情况下,直接在hbase中创建的表,通过phoenix是查看不到的
如果需要在phoenix中操作直接在hbase中创建的表,则需要在phoenix中进行表的映射。映射方式有两种:视图映射和表映射
Phoenix创建的视图是只读的,所以只能用来做查询,无法通过视图对源数据进行修改等操作
# hbase shell 进入hbase命令行
hbase shell
# 创建hbase表
create 'student','info'
# 插入数据
put 'student','1001'
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。