安装配置Phoenix

本文详细介绍了如何安装配置Phoenix,这是一个用于HBase的开源SQL接口。内容包括Phoenix的特性,如易集成、高性能、操作简便和安全功能,以及二级索引支持。在配置方面,涉及环境变量设置、jar包复制和HBase配置文件的修改。最后,文章展示了启动Phoenix及进行CRUD操作的示例。
摘要由CSDN通过智能技术生成

一、背景介绍

Phoenix是HBase的开源SQL皮肤。可以使用标准JDBC API代替HBase客户端API来创建表,插入数据和查询HBase数据。

1) 容易集成:如Spark,Hive,Pig,Flume和Map Reduce。

2) 性能好:直接使用HBase API以及协处理器和自定义过滤器,可以为小型查询提供毫秒级的性能,或者为数千万行提供数秒的性能。

3) 操作简单:DML命令以及通过DDL命令创建表和版本化增量更改。

4) 安全功能: 支持GRANT和REVOKE 。

5) 完美支持Hbase二级索引创建。

二、安装配置

1)下载安装并解压压缩包。这里下载的是phoenix-hbase-1.4-4.16.1-bin.tar.gz。解压命令如下:

tar -zxvf phoenix-hbase-1.4-4.16.1-bin.tar.gz

2)配置环境变量。将以下部分放在环境变量文件中。记得把$PHOENIX_HOME换成自己的。

export PHOENIX_HOME=/home/LL/phoenix/phoenix-hbase-1.4-4.16.1-bin
export PHOENIX_CLASSPATH=$PHOENIX_HOME 
export PATH=$PATH:$PHOENIX_HOME/bin

 编辑好后切记要让环境变量文件生效:

source .bashrc

3)复制server文件到$HBASE_HOME/lib目录下(每台机器都要发送)

复制到本机:

cp phoenix-server-hbase-1.4-4.16.1.jar /home/LL/hbase/hbase-1.4.13/lib

复制到集群中其他节点上:

scp -r ./phoenix-server-hbase-1.4-4.16.1.jar LL@westgisB041:/home/LL/hbase/hbase-1.4.13/lib

4)进入hbase/conf目录,启用二级索引。(建立二级索引,将业务需要的数据联立建立索引,方便查询,但是如果用 hbase 维护的话会很麻烦)

·为什么要做二级索引?

对于HBase而言,如果想精确地定位到某行记录,唯一的办法是通过rowkey来查询。如果不通过rowkey来查找数据,就必须逐行地比较每一列的值,即全表扫描。对于较大的表,全表扫描的代价是不可接受的。但是,很多情况下,需要从多个角度查询数据。例如,在定位某个人的时候,可以通过姓名、身份证号、学籍号等不同的角度来查询,要想把这么多角度的数据都放到rowkey中几乎不可能(业务的灵活性不允许,对rowkey长度的要求也不允许)。所以,需要secondary index(二级索引)来完成这件事。secondary index的原理很简单,但是如果自己维护的话则会麻烦一些。现在,Phoenix已经提供了对HBase secondary index的支持。
本段转载自CSDN博主「会星一击」的原创文章。
原文链接:https://blog.csdn.net/sinat_36121406/article/details/82839003

 进入$HBASE_HOME/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>

将hbase-site.xml拷贝到$PHOENIX_HOME/bin目录下:

cp hbase-site.xml /home/LL/phoenix/phoenix-hbase-1.4-4.16.1-bin/bin

修改配置后,重启hbase。

三、启动phoenix及操作

进入$PHOENIX_HOME/bin目录下,输入以下命令:

./sqlline.py

 输入!tables:

!tables

创建表格:

create table test_user(emp_id bigint primary key,emp_name varchar(10));
select * from test_user;

 插入数据:

upsert into test_user values(1,'luna');

 查询数据:

select * from test_user;

删除记录:

delete from test_user where emp_id=1;

删除表:

drop table test_user;

 退出命令行:

!quit

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值