(三十)大数据实战——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的内容到这里就结束了,我们下期见。。。。。。

相关推荐
武子康18 小时前
大数据-153 Apache Druid 实时接入 Kafka:从摄取到查询的完整实战
大数据·后端·nosql
快乐非自愿18 小时前
数智化时代:AI技术重构企业财务管理系统的底层逻辑与实践
大数据·人工智能·低代码
zskj_zhyl18 小时前
解构智慧养老:当科技成为银发族的“隐形守护者”
大数据·人工智能·科技·物联网
芝麻开门-新起点18 小时前
利用ArcPy批量检查管线隐患点与周边设施距离的实现方案
大数据
卡索(CASO)汽车调查19 小时前
卡索(CASO)汽车调查:数据智能时代,汽车产业竞争格局与战略升维路径探析
大数据·人工智能·汽车·神秘顾客·汽车密采·神秘人·汽车研究
Blossom.11819 小时前
大模型知识蒸馏实战:从Qwen-72B到Qwen-7B的压缩艺术
大数据·人工智能·python·深度学习·算法·机器学习·pygame
小二·20 小时前
Elasticsearch 面试题精编(26题|含答案|分类整理)
java·大数据·elasticsearch
Apache Flink20 小时前
打造可编程可集成的实时计算平台:阿里云实时计算 Flink被集成能力深度解析
大数据·阿里云·flink·云计算
CC-NX20 小时前
大数据安全技术实验:Hadoop环境部署
大数据·hadoop·分布式
万米商云20 小时前
让数据“开口说话”:商城大数据如何预测元器件价格波动与供应风险?
大数据