Phoenix介绍

本文深入解析了Phoenix——一个构建于HBase之上的SQL层,介绍了如何利用它以标准的JDBC API进行表的创建、数据插入及查询。文章详细指导了Phoenix的下载、与HBase的集成步骤及启动过程,揭示了Phoenix如何通过编译SQL成原生HBase扫描,确定scan关键字的最佳范围,实现并行执行,从而大幅提升查询性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、什么是Phonenix?
Phoenix是构建在HBase上的一个SQL层,能让我们用标准的JDBC APIs而不是HBase客户端APIs来创建表,插入数据和对HBase数据进行查询。
Phoenix完全使用Java编写,作为HBase内嵌的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase扫描,并编排执行以生成标准的JDBC结果集。直接使用HBase API、协同处理器与自定义过滤器,对于简单查询来说,其性能量级是毫秒,对于百万级别的行数来说,其性能量级是秒。
Phoenix通过以下方式使我们可以少写代码,并且性能比我们自己写代码更好:

将SQL编译成原生的HBase scans。
确定scan关键字的最佳开始和结束
让scan并行执行

二、phoenix下载
http://archive.apache.org/dist/phoenix/

三、安装phoenix

1、解压

$ tar -zxf apache-phoenix-4.8.0-HBase-0.98-bin.tar.gz -C ../modules/

2、 与hbase集成
在这里插入图片描述

   1)、将phoenix安装目录下的

                phoenix-4.8.0-HBase-0.98-client.jar

                phoenix-core-4.8.0-HBase-0.98.jar

                拷贝到hbase的lib目录下
                
   2)、将hbase/conf目录下 hbase-site.xml 文件放到phoenix的bin目录下

四、启动phoenix
首先:zookeeper 进程需要打开

$ bin/zkServer.sh start
其次:hadoop 的进程需要开启

$ bin/start-dfs.sh
再次:hbase 的需要重启

$ bin/start-hbase.sh
最后: 在Phoenix文件夹下执行,指定zk的地址作为hbase的访问入口:

bin/sqlline.py [hostname]:2181
进入Phoenix命令行,执行

!tables
在这里插入图片描述

注意:第一次启动可能需要1分多钟的时间,之后就会很快,主要是在hbase中做了一些初始化工作,会创建以下3张表

SYSTEM.CATALOG
SYSTEM.SEQUENCE
SYSTEM.STATS 

如果 出现 import argparse这个错误:

需要安装:$ sudo yum -y install python-argparse
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值