一、简介 1、Phoenix定义 1)官网地址:http://phoenix.apache.org/ Phoenix是HBase的开源SQL皮肤。...Hadoop101、Hadoop102、Hadoop103的hbase/lib cp /opt/module/phoenix/phoenix-5.0.0-HBase-2.0-server.jar /opt.../module/hbase/lib/ xsync /opt/module/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar 配置环境变量 vim /etc/profile.d...and metadata updates 重启HBase stop-hbase.sh start-hbase.sh 连接 phoenix /opt/...为了减少数据对磁盘空间的占用,Phoenix默认会对HBase中的列名做编码处理。
Phoenix是什么 简单来说,Phoenix 是一个可以让我们通过SQL的方式操作HBase数据库的框架。...是不是很难看,而且如果对HBase进行复杂查询的话,只能通过HBase的原生API编写查询程序,这样就比较麻烦。...使用Phoenix的话,就可以使用SQL来查询,便捷高效,同时还可以为HBase添加二级索引,提升查询性能,还有其他一些方便的特性。...Phoenix 支持通过编写JDBC代码来操作HBase,比原生API更方便。...小结 Phoenix 的基础功能就是在 HBase 之上添加了 SQL 层,可以让我们更方便的使用 HBase。
五、Phoenix介绍 Phoenix 是 HBase 的开源 SQL 中间层,它允许你使用标准 JDBC 的方式来操作 HBase 上的数据。...在 Phoenix 之前,如果你要访问 HBase,只能调用它的 Java API,但相比于使用一行 SQL 就能实现数据查询,HBase 的 API 还是过于复杂。...Phoenix 的理念是 we put sql SQL back in NOSQL,即你可以使用标准的 SQL 就能完成对 HBase 上数据的操作。...其次 Phoenix 的性能表现也非常优异,Phoenix 查询引擎会将 SQL 查询转换为一个或多个 HBase Scan,通过并行执行来生成标准的 JDBC 结果集。...同时 Phoenix 还拥有二级索引等 HBase 不具备的特性,因为以上的优点,所以 Phoenix 成为了 HBase 最优秀的 SQL 中间层。 ---- -END-
下载安装 首先从 apache 下载 phoenix 包,这里因为我的hbase hbase-1.4.9 版,所以我下载的对应的版本 apache-phoenix-4.14.1-HBase-1.4-bin.tar.gz...下载后解压之 apache-phoenix-4.14.1-HBase-1.4-bin.tar.gz tar zxvf apache-phoenix-4.14.1-HBase-1.4-bin.tar.gz...准备 hbase 为了使用 phoenix,需要将 phoenix 目录下的 phoenix-*。...jar 包复制到 hbase 的 lib 目录下,比如: cp apache-phoenix-4.14.1-HBase-1.4-bin/phoenix-*.jar hbase-1.4.9/lib/ 然后重新系统.../start-hbase.sh 连接phoenix 可以使用下面两种方式连接 方式一:直接连接 cd apache-phoenix-4.14.1-HBase-1.4-bin/bin # 默认连接本地hbase
一、主机规划 继续上一篇,本篇介绍在同一环境中安装 Phoenix,并连接上篇部署的 HBase 集群。...Phoenix 相对于 HBase 来说就是一个支持 SQL 的客户端软件,为能在集群环境中任何节点上都能使用 Phoenix 命令行,在所有节点上都安装。...添加下面两行 export PHOENIX_HOME=/root/phoenix-hbase-2.5-5.1.3-bin/ export PHOENIX_CLASSPATH=$PHOENIX_HOME...将 phoenix-server-hbase-2.5-5.1.3.jar 文件复制到 HBase 的 lib 目录中 cp $PHOENIX_HOME/phoenix-server-hbase-2.5-...如上一篇在 hbase shell 中创建的 test 表,这里没有显示。如果要在 Phoenix 中操作直接在 HBase 中创建的表,则需要在 Phoenix 中进行表的映射。
欢迎您关注《大数据成神之路》 本次分享来源于阿里多模型数据库专家张赟的分享,关于如何使用Phoenix来查询Hbase以及Phoenix的应用场景。 ? ? ? ? ? ? ? ? ? ? ? ?
Apache Phoenix 组件就完成了这种需求,Phoenix是构建在HBase上的一个SQL层,能让我们用标准的JDBC APIs而不是HBase客户端APIs来创建表,插入数据和对HBase数据进行查询...Phoenix完全使用Java编写,作为HBase内嵌的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase扫描,并编排执行以生成标准的JDBC结果集。...官方注解为 “Phoenix -we put the SQL back in NoSql”,通过官方说明,Phoenix 的性能很高,相对于 hbase 原生的scan 并不会差多少,而对于类似的组件...从图中可看出,带有Key过滤的Phoenix耗时最少,不带Key过滤的Phoenix和基于HDFS的Hive性能差不多,直接基于HBase的Hive性能最差。...搜狗使用Phoenix: • 商业智能:使用HBase + Phoenix存储广告交易平台的数十亿条记录,由于Phoenix的SQL抽象和二级索引,可以为广告客户提供多维统计和分析报告,使他们能够通过全面的洞察力做出明智的决策最大化他们的投资收入
一、Phoenix简介 Phoenix 是 HBase 的开源 SQL 中间层,它允许你使用标准 JDBC 的方式来操作 HBase 上的数据。...在 Phoenix 之前,如果你要访问 HBase,只能调用它的 Java API,但相比于使用一行 SQL 就能实现数据查询,HBase 的 API 还是过于复杂。...其次 Phoenix 的性能表现也非常优异,Phoenix 查询引擎会将 SQL 查询转换为一个或多个 HBase Scan,通过并行执行来生成标准的 JDBC 结果集。...同时 Phoenix 还拥有二级索引等 HBase 不具备的特性,因为以上的优点,所以 Phoenix 成为了 HBase 最优秀的 SQL 中间层。...-cdh5.15.2/lib 2.3 重启 Region Servers # 停止Hbase stop-hbase.sh # 启动Hbase start-hbase.sh 2.4 启动Phoenix 在
Apache Phoenix 是 HBase 的 SQL 驱动。Phoenix 使得 HBase 支持通过 JDBC 的方式进行访问,并将你的 SQL 查询转成 HBase 的扫描和相应的动作。...兼容性: Phoenix 2.x - HBase 0.94.x Phoenix 3.x - HBase 0.94.x Phoenix 4.x - HBase 0.98.1+ 1:hbase 0.94.21...下载,根据安装的HBase选择hadoop1或hadoop2 Add the phoenix-[version]-server.jar to the classpath of every HBase region...Phoenix 3.x) 把phoenix-core-3.1.0.jar复制到所有HBase region server的lib目录 Restart all region servers..../phoenix-core-3.1.0.jar linuxidc@linuxidc01:/home/linuxidc/hbase-0.94.21/lib phoenix-core-3.1.0.jar
以下文章来源于大数据技术架构 ,作者大数据技术架构 Phoenix 在 HBase 生态系统中占据了非常重要的地位,本文主要包括以下几方面内容: Phoenix 介绍 CDH HBase 集成 Phoenix...使用 Phoenix 创建 HBase 二级索引 Phoenix 索引类型介绍 Phoenix 介绍 Phoenix 是构建在 HBase 之上的高效的 SQL 引擎,同时具备 OLTP...Phoenix 与 HBase 集成,其最大的特点就是为 HBase 提供了二级索引,后文会重点介绍。下图是 Phoenix 的基本架构: ?...使用 Phoenix 创建 HBase 二级索引 映射已存在的 HBase 表 1....HBase集成Phoenix,构建Phoenix view和table的区别 2. 如何使用Phoenix在CDH的HBase中创建二级索引 3.
完全分布式 HBase 集群的运行依赖于 Zookeeper 和 Hadoop,在前一篇中已经详细介绍了他们的安装部署及运行,参见“基于 HBase & Phoenix 构建实时数仓(1...解压、配置环境 # 解压 tar -zxvf hbase-2.5.7-hadoop3-bin.tar.gz # 编辑 $HBASE_HOME/conf/hbase-env.sh 文件设置 HBase...修改 HBase 配置文件 # 备份原始文件 cp $HBASE_HOME/conf/hbase-site.xml $HBASE_HOME/conf/hbase-site.xml.bak # 编辑 $...HBASE_HOME/conf/hbase-site.xml 文件 vim $HBASE_HOME/conf/hbase-site.xml 配置如下: ...-- 为使用 Phoenix,hbase.client.keyvalue.maxsize 不能设置为 0 --> hbase.client.keyvalue.maxsize
因为之前公司项目里已经导入了很多数据,所以需要在客户端以及服务端开启phoenix的映射功能: ?...因为是关联表,所以要进行视图映射,而不是直接去创建表,因为这样删除你创建的表,hbase的表也会受损,所以用视图是一个很好的方法,建表语句如下: create view "data"."...已经和phoenix关联上了。
安装Phoenix 一、下载 大家可以从官网上下载与HBase版本对应的Phoenix版本。对应到HBase 2.1,应该使用版本「5.0.0-HBase-2.0」。.../server/apache-phoenix-5.0.0-HBase-2.0-bin/phoenix-*.jar /export/server/hbase-2.1.0/lib/ # 进入到hbase...拷贝到phoenix的bin目录 cp /export/server/hbase-2.1.0/conf/hbase-site.xml /export/server/apache-phoenix-5.0.0...-HBase-2.0-bin/bin/ 5、重新启动HBase stop-hbase.sh start-hbase.sh 6、启动Phoenix客户端,连接Phoenix Server 注意:第一次启动...Phoenix连接HBase会稍微慢一点。
一、Phoenix简介 Phoenix 是 HBase 的开源 SQL 中间层,它允许你使用标准 JDBC 的方式来操作 HBase 上的数据。...在 Phoenix 之前,如果你要访问 HBase,只能调用它的 Java API,但相比于使用一行 SQL 就能实现数据查询,HBase 的 API 还是过于复杂。...其次 Phoenix 的性能表现也非常优异,Phoenix 查询引擎会将 SQL 查询转换为一个或多个 HBase Scan,通过并行执行来生成标准的 JDBC 结果集。...同时 Phoenix 还拥有二级索引等 HBase 不具备的特性,因为以上的优点,所以 Phoenix 成为了 HBase 最优秀的 SQL 中间层。 ?...-cdh5.15.2/lib 2.3 重启 Region Servers # 停止Hbase stop-hbase.sh # 启动Hbase start-hbase.sh 2.4 启动Phoenix
12949 Kafka 20844 HRegionServer 15007 QuorumPeerMain [root@vvml-yz-hbase-test~]# # node3 [root@vvml-yz-hbase-test...~]# # node4 [root@vvml-yz-hbase-test~]#jps 8352 NodeManager 19857 NameNode 11154 HRegionServer 10531...查看 Kafka 在 Zookeeper 中的 znode [root@vvml-yz-hbase-test~]#zkCli.sh -server node1:2181 ......[zk: node1:2181(CONNECTED) 0] ls / [hadoop-ha, hbase, kafka, rmstore, yarn-leader-election, zookeeper...[root@vvml-yz-hbase-test~]# 可以看到单分区平均吞吐量约 98.61 MB/S,平均每秒发送 50489 条 2KB 的消息。
截止到2020年12月,Phoenix最高只支持到Hbase2.0版本,并不支持更高的版本。...而我们采用的是腾讯云HBase,使用的版本是2.2.0版本,我们在使用Phoenix-5.0版本时,发现系统报错,无法正常使用。...其实Phoenix-5.0版本已经两年多没有更新了,而Hbase还在不断演进,越来越多的人使用Hbase2.0以上版本,这个问题会越来越突出,我们跟踪发现,只要做些简单处理,Phoenix-5.0就可以支持...Hbase 2.2.0版本,运行非常稳定。...使用过程中,发现后台报错: Caused by: java.lang.VerifyError: class org.apache.phoenix.hbase.index.covered.data.IndexMemStore
Apache Phoenix的视图操作 一、应用场景 因为我们之前已经创建了 MOMO_CHAT:MSG 表,而且数据添加的方式都是以PUT方式原生API来添加的。...故此时,我们不再需要再使用Phoenix创建新的表,而是使用Phoenix中的视图,通过视图来建立与HBase表之间的映射,从而实现数据快速查询。...二、视图介绍 我们可以在现有的HBase或Phoenix表上创建一个视图。表、列蔟和列名必须与现有元数据完全匹配,否则会出现异常。当创建视图后,就可以使用SQL查询视图,和操作Table一样。...... ) 考虑以下几个问题: 视图如何映射到HBase的表?...视图的名字必须是:命名空间.表名 视图中的列如何映射到HBase的列蔟和列? 列名必须是:列蔟.列名 视图中的类如何映射到HBase的ROWKEY?
从 0.94 版本开始, HBase 开始支持二级索引. HBase 索引有多种放方案, 我们今天要做的是使用 Phoenix 给 HBase 添加二级索引. 二....配置 HBase 支持 Phoenix 创建二级索引 需要先给 HBase 配置支持创建二级索引 1....-- phoenix regionserver 配置参数 --> hbase.regionserver.wal.codec ...-- phoenix master 配置参数 --> hbase.master.loadbalancer.class org.apache.phoenix.hbase.index.balancer.IndexLoadBalancer...Phoenix 创建索引 1. Phoenix 索引分类 Phoenix 索引分全局索引和局部索引 1. 全局索引 global index 是默认的索引格式。
Apache Phoenix的基本介绍 Apache Phoenix主要是基于HBase一款软件, 提供了一种全新(SQL)的方式来操作HBase中数据, 从而降低了使用HBase的门槛, 并且 Phoenix...使用Phoenix 是否会影响HBase的性能呢?...Phoenix不会影响HBase性能,反而会提升HBase性能 Phoenix将SQL查询编译为本机HBase扫描 确定scan的key的最佳startKey和endKey 编排scan的并行执行 将WHERE...千万不要这么以为,HBase + Phoenix是否适合做OLAP取决于HBase的定位。...因为有这样的一些限制,绝大多数公司不会选择HBase + Phoenix来作为数据仓库的开发。而是用来快速进行海量数据的随机读写。这方面,HBase + Phoenix有很大的优势。
用 jps 可以看到 QuorumPeerMain 进程: [root@vvml-yz-hbase-test~]#jps 5316 QuorumPeerMain 5373 Jps [root@vvml-yz-hbase-test...-- 配合 HBase 或其他 dfs 客户端使用,表示开启短路径读,可以用来优化客户端性能 --> dfs.client.read.shortcircuit...[root@vvml-yz-hbase-test~]# # node3 进程 [root@vvml-yz-hbase-test~]#jps 7026 DataNode 5316 QuorumPeerMain...6699 JournalNode 7197 Jps [root@vvml-yz-hbase-test~]# # node4 进程 [root@vvml-yz-hbase-test~]#jps 8000...Jps 15007 QuorumPeerMain [root@vvml-yz-hbase-test~]# # node3 进程 [root@vvml-yz-hbase-test~]#jps 7026
领取专属 10元无门槛券
手把手带您无忧上云