Phoenix的安装和结合HBase简单使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33689414/article/details/84027570

Phoenix的安装和结合HBase简单使用

Phoenix是建立在HBase数据存储之上,可以通过jdbc的方式访问HBase,旨在通过sql可以更快的访问HBase的数据。

关于Phoenix的性能

一、Phoenix简单安装

1.1 下载

因为的HBase版本是1.2,所以下载对应的Phoenix版本的包

wget http://apache.fayea.com/phoenix/apache-phoenix-4.14.0-HBase-1.2/bin/apache-phoenix-4.14.0-HBase-1.2-bin.tar.gz

解压安装包

tar -zxvf apache-phoenix-4.14.0-HBase-1.2-bin.tar.gz

重命名

mv apache-phoenix-4.14.0-HBase-1.2-bin phoenix

进入phoenix目录,将目录下的phoenix-4.14.0-HBase-1.2-server.jar复制到hbase的安装目录下的lib目录(如果是集群,需要复制到每台机器)

如:

cp phoenix/phoenix-4.14.0-HBase-1.2-server.jar hbase/1.2.6.1/libexec/lib/

1.2 启动

如果HBase已启动,需要重新启动。如果没启动HBase,直接启动就好。

启动Phoenix

# 进入phoenix下的bin目录
cd phoenix/bin

# 用python2.x启动
python2 sqlline.py

启动如图:

image

二、Phoenix的shell命令行使用

2.1 shell命令

# 显示表
> !tables

# 查看表信息
> !describe tables_name

# 退出命令行
> !quit

# 删除表
> DROP TABLE tables_name;

Phoenix的sql基本上和mysql的语句是一样的,下面使用一个二级索引的示例演示下。

2.2 二级索引示例

创建user表,并插入数据

# 创建一个user表
create table user(id varchar primary key,name varchar,age varchar,phone varchar,email varchar);


# 插入5条数据,使用upsert插入
upsert into user values('1001','caocao','26','13800000000','[email protected]');
upsert into user values('1002','liubei','24','13800000001','[email protected]');
upsert into user values('1003','guanyu','23','13800000002','[email protected]');
upsert into user values('1004','zhangfei','22','13800000003','[email protected]');
upsert into user values('1005','sunquan','20','13800000004','[email protected]');


# 查询user表
select * from user;

image

创建phone表,并插入数据

# 创建phone表
create table phone(phone varchar primary key, yys varchar, address varchar);


# 插入5条数据
upsert into phone values('13800000000','移动','河南');
upsert into phone values('13800000001','电信','四川');
upsert into phone values('13800000002','电信','四川');
upsert into phone values('13800000003','电信','四川');
upsert into phone values('13800000004','联通','江苏');


# 查询数据
select * from phone;

image

user表和phone表join

select u.*,p.* from user u left join phone p on u.phone = p.phone;

image

猜你喜欢

转载自blog.csdn.net/qq_33689414/article/details/84027570