栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 云计算 > 云平台

Hadoop环境搭建学习之Phoenix整合HBase(8)

云平台 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Hadoop环境搭建学习之Phoenix整合HBase(8)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录
  • 前言
  • 一、Phoenix是什么?
  • 二、使用步骤
    • 1.环境准备
    • 2.集群规划
    • 2.Phoenix安装
    • 3.Phoenix Shell 表操作
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

HBase 不支持 SQL 语法,使用非常不便,所以诞生丁 Phoenix。 Phoenix 是通过一个嵌人的 JDBC驱动存储在HBase 中的数据的查询。Phoenix 可以让开发者在 HBase数据集上使用 SQL 查询。

一、Phoenix是什么?

Phoenix:JAVA语言编写,查询引擎会将SQL查询语句转化成一个或多个HBase Scanner,且并行执行生成标准的JDBC结果集。phoenix使用标准JDBC API代替HBase客户端API来创建表、插入数据和查询HBase数据。我可以理解为phoenix是HBASE的一个框架,通过使用标准的SQL语句来操作HBASE。

Phoenix特点:
1)容易集成:如Spark,Hive,Flume和Map Reduce;
2)操作简单:DML命令以及通过DDL命令创建和操作表和版本化增量更改;
3)支持HBase二级索引创建。
具体可看官方:http://phoenix.apache.org/

二、使用步骤 1.环境准备
说明软件
操作系统Windows 10
虚拟机VMware 15.5
Linux系统Centos 7 64位
Zookeeperzookeeper-3.4.10
Hadoophadoop-3.3.1
HBaseHbase2.4.4
HiveHive3.1.2
Kafkakafka_2.12-3.0.0
Sparkspark-3.1.3
Scalascala-2.12.10
开发工具IntelliJ IDEA 2020.1
Phoenixphoenix-hbase-2.4-5.1.2
2.集群规划
IPHostNameSoftwareProcess
192.168.74.88hadoop01hadoop,zookeeper,hbase,hive,mysql,kafka,spark,scalaDataNode,NodeManager,QuorumPeerMain,JournalNode,NameNode,DFSZKFailoverController,ResourceManager,HMaster,HRegionServer,RunJar,RunJar,kafka,Master,Worker
192.168.74.89hadoop02hadoop,zookeeper,kafka,spark,scalaDataNode,NodeManager,QuorumPeerMain,JournalNode,NameNode,DFSZKFailoverController,HRegionServer,kafka,Worker
192.168.74.90hadoop03hadoop,zookeeper,hbase,hvie,kafka,spark,scalaDataNode,NodeManager,QuorumPeerMain,JournalNode,ResourceManager,HMaster,HRegionServer,RunJar,kafka,Master,Worker
2.Phoenix安装

代码如下(示例):

hadoop01   hbase
hadoop02
hadoop03   hbase

phoenix-hbase-2.4-5.1.2-bin.tar.gz

su hadoop
cd /data/phoenix
tar -zxvf phoenix-hbase-2.4-5.1.2-bin.tar.gz
1、# 重命名一下文件夹
mv phoenix-hbase-2.4-5.1.2-bin app

2、# 将phoenix-server-hbase-2.4-5.1.2.jar文件拷贝到HBase的lib目录下
cd /data/phoenix/app
cp phoenix-server-hbase-2.4-5.1.2.jar  /data/hbase/app/lib/

3、# 系统环境变量
》ok--------------------------------------
vim ~/.bashrc
gedit ~/.bashrc

export PHOENIX_HOME=/data/phoenix/app
export PHOENIX_CLASSPATH=$PHOENIX_HOME
export PATH=$PATH:$PHOENIX_HOME/bin

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

source ~/.bashrc
--------------------------------------------

4、#软连接hbase-site.xml
## 进入bin目录
cd /data/phoenix/app/bin/
##软连接hbase-site.xml文件
ln -sf  /data/hbase/app/conf/hbase-site.xml


5、#将文件同步到其他主机上
scp -r/data/phoenix/app/lib/phoenix-server-hbase-2.4-5.1.2.jar hadoop@hadoop02:/data/phoenix/app/lib

scp -r /data/phoenix/app hadoop@hadoop02:/data/phoenix
scp -r /data/phoenix/app hadoop@hadoop03:/data/phoenix

scp -r /data/phoenix/app/lib/phoenix-server-hbase-2.4-5.1.2.jar hadoop@hadoop03:/data/phoenix/app/lib

6、# 重启HBase
stop-hbase.sh
start-hbase.sh

7、# 连接phoenix
/data/phoenix/app/bin/sqlline.py hadoop01,hadoop02,hadoop03:2181

# 输入!tables查看是否安装成功

3.Phoenix Shell 表操作

(1)显示所有表
!table 或 !tables
(2)创建表
CREATE TABLE IF NOT EXISTS us_population (
state CHAr(2) NOT NULL,
city VARCHAR NOT NULL,
population BIGINT
CONSTRAINT my_pk PRIMARY KEY (state, city));
(3)插入数据
upsert into us_population values(‘NY’,‘NewYork’,8143197);
upsert into us_population values(‘BJ’,‘BeiJing’,8143198);
(4)查询记录
select * from us_population;
select * from us_population where population=8143197;

(4)删除记录
delete from us_population where population=8143197;

(5)删除表
drop table us_population;

总结

记录点点滴滴

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/895871.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号