HBase集成Phoenix

HBase是使用列式存储,在使用起来不如SQL方便,所以就出现了Phoenix。可以直接基于HBase添加索引,以及用SQL实现增删改查。

1. 下载解压

参考:http://phoenix.apache.org/Phoenix-in-15-minutes-or-less.html

# wget http://www.apache.org/dyn/closer.lua/phoenix/phoenix-5.1.1/phoenix-hbase-2.3-5.1.1-bin.tar.gz
# wget https://mirrors.bfsu.edu.cn/apache/phoenix/phoenix-5.1.1/phoenix-hbase-2.4-5.1.1-bin.tar.gz

wget https://mirrors.bfsu.edu.cn/apache/phoenix/phoenix-5.1.2/phoenix-hbase-2.3-5.1.2-bin.tar.gz

tar zxvf phoenix-hbase-2.3-5.1.1-bin.tar.gz -C /app

# 增加软链接
ln -s /app/phoenix-hbase-2.3-5.1.1-bin /app/phoenix

2. 安装

# 复制文件到hbase下(只要复制这一个) 5.1+
cp /app/phoenix/phoenix-server-hbase-2.3-5.1.1.jar /app/hbase/lib/

# 针对apache-phoenix-5.0.0-HBase-2.0-bin版本:(注意版本,选择一个执行)
cd /app/hbase/lib
ln -s /app/phoenix/phoenix-5.0.0-HBase-2.0-server.jar

# 分发到其他服务器
xsync /app/hbase/lib

3. 修改配置文件

1. 修改环境变量

sudo vi /etc/profile.d/env.sh

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

# 分发至各服务器
sudo /home/hadoop/bin/xsync /etc/profile.d/env.sh
# 启用环境变量
source /etc/profile
2. 修改hbase-site.xml
<!-- 支持Hbase命名空间映射 -->
<property>
    <name>phoenix.schema.isNamespaceMappingEnabled</name>
    <value>true</value>
</property>
<property>
    <name>phoenix.schema.mapSystemTablesToNamespace</name>
    <value>true</value>
</property>

<!-- 支持索引预写日志编码 -->
<property>
    <name>hbase.regionserver.wal.codec</name>
    <value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
</property>

<!-- 加载协处理器,不能把hbase挂掉 -->
<property>
    <name>hbase.coprocessor.abortonerror</name>
    <value>false</value>
</property>

<!-- 列名不做编码转换 -->
<property>
	<name>phoenix.default.column.encoded.bytes.attrib</name>
	<value>0</value>
</property>
3. 复制hbase-site.xml到phoenix
ln -s /app/hbase/conf/hbase-site.xml /app/phoenix/bin/hbase-site.xml
ln -s $HADOOP_HOME/etc/hadoop/core-site.xml /app/phoenix/bin/core-site.xml
ln -s $HADOOP_HOME/etc/hadoop/hdfs-site.xml /app/phoenix/bin/hdfs-site.xml

4. 启动

首次启动时会自动初始化

/app/phoenix/bin/sqlline.py hadoop101


欢迎关注微信公众号,回复hadoop,获取从零开始Hadoop系列完整文档

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值