phoenix理论、安装配置和对HBase的操作

phoenix理论

概述

  • Phoenix简介
    • 构建在HBase上的SQL层
    • 使用标准SQL在HBase中管理数据
    • 使用JDBC来创建表,插入数据、对HBase数据进行查询
    • Phoenix JDBC Driver容易嵌入到支持JDBC的程序中
  • Phoenix无法代替RDBMS
    • 缺乏完整约束,很多领域尚不成熟
  • Phoenix使HBase更易用

应用场景

  • Phoenix适合场景
    • 快速而容易地构建基于HBase的应用程序
    • 需要极大的规模、性能和并发性的SQL应用程序
    • 在转换到Hadoop时重用已有的SQL技能
    • BI工具(对SQL支持较好)
  • Phoenix不适合场景
    • 涉及大型Join操作或高级SQL特性的复杂SQL查询
    • Full-Table Scans
    • ETL jobs
    • Application Drivers/Interface

架构

在这里插入图片描述

SQL语法

  • Phoenix支持类SQL语法在这里插入图片描述

  • Phoenix支持的关键字类型在这里插入图片描述

phoenix安装配置

单机模式下安装配置phoenix

  • 1、下载 apache-phoenix-4.14.0-cdh5.14.2-bin.tar.gz,上传到linux(本文放到了/software目录下)
    下载地址:http://phoenix.apache.org/download.html
  • 2、解压apache-phoenix-4.14.0-cdh5.14.2-bin.tar.gz至目录/opt下,并重命名为phoenix
#解压安装包
tar -zxvf apache-phoenix-4.14.0-cdh5.14.2-bin.tar.gz -C /opt/
#重命名
mv apache-phoenix-4.14.0-cdh5.14.2-bin/ phoenix
  • 3、拷贝/opt/phoenix目录下的phoenix-4.14.0-cdh5.14.2-server.jar包到hbase/lib目录
#转至/opt/phoenix目录
cd /opt/phoenix
#拷贝jar包
cp phoenix-4.14.0-cdh5.14.2-server.jar /opt/hbase/lib/
  • 4、修改/opt/hbase/conf目录下hbase-site.xml配置文件
    添加以下内容:
	<property>
        <name>hbase.regionserver.wal.codec</name>
        <value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
   </property>
   <property>
        <name>phoenix.schema.isNamespaceMappingEnabled</name>
        <value>true</value>
   </property>
   <property>
         <name>phoenix.schema.mapSystemTablesToNamespace</name>
         <value>true</value>
   </property>
   <property>
         <name>phoenix.functions.allowUserDefinedFunctions</name>
         <value>true</value>
         <description>enable UDF functions</description>
   </property>
  • 5、重新启动HBase
#重启hbase
hbase-daemon.sh restart master
  • 6、拷贝hbase-site.xml文件到phoenix/bin目录后即可
#拷贝文件
cp conf/hbase-site.xml /opt/phoenix/bin/

phoenix对Hbase的操作

命令行操作

!tables  	-- 查看所有表,类似于beeline操作
CREATE TABLE company (COMPANY_ID INTEGER PRIMARY KEY, NAME VARCHAR(225)); 	 --创建表操作
UPSERT INTO company VALUES(1, 'Microsoft');  	-- 插入数据
SELECT * FROM Company;	--查看数据

实例

  • 1、创建表操作
#创建表test_emp
create table test_emp(emp_id bigint primary key,emp_name varchar(10));

在这里插入图片描述

#插入数据
upsert into test_emp values(1,'trump');
#查看数据
select * from test_emp;

在这里插入图片描述

  • 2、到hbase中执行以下命令,查看在phoenix中创建的表
#查看行数据
get 'TEST_EMP','1'
#扫描表
scan 'TEST_EMP'

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值