phoenix教程

Apache Phoenix是在HBase之上构建的,提供标准SQL接口进行OLTP和运营分析,具有低延迟特性。它将SQL编译为HBase扫描,支持SELECT、FROM、WHERE等操作,但不支持Intersect和Minus。Phoenix通过JDBC连接,允许创建表和事务处理。适用于需要SQL查询和高性能的Hadoop环境。
摘要由CSDN通过智能技术生成

关于phoenix的名称,直译为凤凰,在中国有凤凰涅盘之说,咋一听似乎该项目之前挂过很多次,现在翻身了,

实际上其官网戏谑的说有此一问的,可以回家睡大觉了,没时间回答你。

phoenix是构建的Hbase之上的,使用标准的SQL操作Hbase,可以做联机事务处理,拥有低延迟的特性。

Apache Hadoop的用于OLTP和运营分析

phoenix会把SQL编译成一系列的Hbase的scan操作,然后把scan结果生成标准的JDBC结果集,

其底层由于使用了Hbase的API,协处理器,过滤器,处理千万级行的数据也只用毫秒或秒级就搞定。

支持有:SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY等操作。

但phoenix目前不支持Intersect, Minus操作,Oracle是支持此操作的。

可以通过类似Mysql方式连接phoenix:

Connection conn = DriverManager.getConnection("jdbc:phoenix:server1,server2:3333",props);

Phoenix支持通过DDL命令进行表格创建和版本化增量更改,相应元数据存储在Hbase表中。

元数据用于描述phoenix表与hbase之间的关系,映射。

phoenix表可能通过两种方式创建

从头开始,这种方式Hbase的表与列族都会自动创建。
映射到一个存在的Hbase表。
Phoenix版"Hello World"例子:

create table test (mykey integer not null primary key, mycolumn varchar);
upsert into test values (1,'Hello');
upsert into test values (2,'World!');
select * from test;
//注意,phoenix没有insert,其insert与update合起来叫做:upsert

打印结果如下:

+-------+------------+
| MYKEY |  MYCOLUMN  |
+-------+------------+
| 1     | Hello      |
| 2     | World!     |
+-------+------------+

 

Apache Phoenix通过结合两者的优点,在Hadoop中为低延迟应用程序启用OLTP和运营分析:

  • 具有完整ACID事务功能的标准SQL和JDBC API的强大功能
  • 通过利用HBase作为其后备存储,来自NoSQL世界的后期绑定模式读取功能的灵活性

Apache Phoenix与其他Hadoop产品完全集成,如Spark,Hive,Pig,Flume和Map Reduce。


谁在使用Apache Phoenix?在这里阅读更多......

任务

通过定义明确的行业标准API,成为Hadoop的OLTP和运营分析的可信数据平台。

快速开始

厌倦了阅读已经只是想开始?看看我们的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值