Quantcast
Channel: CodeSection,代码区,数据库(综合) - CodeSec
Viewing all articles
Browse latest Browse all 6262

phoenix到hbase的应用

$
0
0
一、phoenix的简介

hbase的java api或者其语法很难用,可以认为phoenix是一个中间件,提供了访问hbase的另外的语法。

二、配置phoenix和hbase 1.下载

phoenix的官网是:http://phoenix.apache.org/,用户可以到该网址找到对应hbase版本的phoenix来下载。

这里使用的是phoenix-4.6.0-HBase-0.98-bin.tar.gz这个包

2.解压并拷贝文件

tar -zxvf phoenix-4.6.0-HBase-0.98-bin.tar.gz -C /usr/local/

解压完成后可以看到如下的目录:


phoenix到hbase的应用

其中雷系tests.jar和sources.jar是没有用的,可以删除掉

rm -f *-tests.jarrm -f *-sources.jar

然后拷贝这些jar文件到hbase的安装目录下

cp *.jar ../hbase-0.98.8-hadoop2/lib/

重启region server即可

./hbase-daemon.sh stop regionserver

./hbase-daemon.sh start regionserver

3.执行sqlline.py

进入到phoenix的bin目录,执行sqlline.py 命令的参数是zk的地址

三、使用phoenix 3.1在phoenix中创建表

create table student(id varchar(64) not null primary key,name varchar(64),age integer);

可以看到在hbase中也出现了一张表

["STUDENT", "SYSTEM.CATALOG", "SYSTEM.FUNCTION", "SYSTEM.SEQUENCE", "SYSTEM.STATS"]
phoenix到hbase的应用

在phoenix中创建的表,表名会自动变成大写。并且列族是0

3.2使用phoenix插入或者更新数据

upsert into STUDENT (id,name,age) values ('1','zhangsan',25);

upsert into STUDENT (id,name,age) values ('2','lisi',20);

3.3使用phoenix查询数据

select * from STUDENT where age > 20;

四、关于phoenix的小问题

1.如何创建小写的表名?

create table "student"("id" varchar(64) not null primary key,name varchar(64),age interger);

2.如何创建自定义列族的表?

create table "student2"("id" varchar(64) not null primary key ,"cf"."name" varchar(64),"cf"."age" integer);


Viewing all articles
Browse latest Browse all 6262

Trending Articles