(三十)大数据实战——HBase集成部署安装Phoenix

前言

Phoenix 是一个开源的分布式关系型数据库查询引擎,它基于 Apache HBase构建。它提供了在 Hadoop 生态系统中使用 SQL查询和事务处理的能力。本节内容我们主要介绍一下Hbase如何集成部署安装Phoenix服务工具,并集成hive框架,能够快速、灵活和可扩展的方式来在Hadoop生态系统中进行 SQL 查询和事务处理。

正文

①上传Phoenix部署安装包到hadoop101服务器/opt/software目录下

②将Phoenix安装包解压到/opt/module目录

tar -zxvf phoenix-hbase-2.4-5.1.2-bin.tar.gz -C /opt/module

③进入/opt/module/phoenix-hbase-2.4-5.1.2-bin安装包目录将phoenix-server-hbase-2.4-5.1.2.jar拷贝到hbase的lib目录下

④分发hbase的lib目录下phoenix-server-hbase-2.4-5.1.2.jar到hadoop102、hadoop103节点

⑤配置phoenix系统环境变量

⑥使环境变量配置生效

source /etc/profile.d/my_env.sh

⑦重启hbase服务,使phoenix服务生效

 ⑧连接phoenix客户端,访问hbase

/opt/module/phoenix-hbase-2.4-5.1.2-bin/bin/sqlline.py hadoop101,hadoop102,hadoop103:2181

 ⑨操作phoenix客户端,完成一些基本操作案例

- 创建表student

CREATE TABLE IF NOT EXISTS student(
id VARCHAR primary key,
name VARCHAR,
age BIGINT,
addr VARCHAR);

- 插入数据

upsert into student values('1001','zhangsan', 10, 'beijing');

- 查询student表数据

select * from student;

*phoenix客户端查询

*hbase客户端查询

- 删除记录

delete from student where id='1001';

- 删除表

drop table student;

⑩ phoenix通过视图映射或者表映射连接hbase中创建的表

- 在hbase中创建一个test表

- 创建视图映射,只能查看,不能写操作

create view "test"(
    id varchar primary key,
    "info1"."name" varchar, 
    "info2"."address" varchar);

- 创建表映射,可读写

create table
"test"(id varchar primary key,"info1"."name" varchar, 
"info2"."address" varchar) column_encoded_bytes=0;

 ⑪hbase集成hive,在 hive-site.xml中添加zookeeper的配置,用于读取metabase数据

- 配置文件

<property>
 <name>hive.zookeeper.quorum</name>
 <value>hadoop101,hadoop102,hadoop103</value>
</property>
<property>
 <name>hive.zookeeper.client.port</name>
 <value>2181</value>
</property>

⑫ 在hive中创建一张表并关联hbase

CREATE TABLE hive_hbase_emp_table(
    empno int,
    ename string,
    job string,
    mgr int,
    hiredate string,
    sal double,
    comm double,
    deptno int
)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,info:ename,info:job,info:mgr,info:hiredate,info:sal,info:comm,info:deptno")
TBLPROPERTIES ("hbase.table.name" = "hbase_emp_table");

⑬ 在hbase中生成了hbase_emp_table表,这样在操作hive表数据时可将hive的数据同步到hbase中

结语

关于HBase集成部署安装Phoenix的内容以及使用Phoenix客户端操作hbase数据库和集成hive的内容到这里就结束了,我们下期见。。。。。。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

厉害哥哥吖

您的支持是我创作下去的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值