Apache Phoenix
1 简介
Phoenix官方网址:http://phoenix.apache.org/
Phoenix官网:「We put the SQL back in NoSQL」
Apache Phoenix让Hadoop中支持低延迟OLTP和业务操作分析。
-
提供标准的SQL以及完备的ACID事务支持
-
通过利用HBase作为存储,让NoSQL数据库具备通过有模式的方式读取数据,我们可以使用SQL语句来操作HBase,例如:创建表、以及插入数据、修改数据、删除数据等。
-
Phoenix通过协处理器在服务器端执行操作,最小化客户机/服务器数据传输
Apache Phoenix可以很好地与其他的Hadoop组件整合在一起,例如:Spark、Hive、Flume以及MapReduce。
2 使用Phoenix是否会影响HBase性能
-
Phoenix不会影响HBase性能,反而会提升HBase性能
-
Phoenix将SQL查询编译为本机HBase扫描
-
确定scan的key的最佳startKey和endKey
-
编排scan的并行执行
-
将WHERE子句中的谓词推送到服务器端
-
通过协处理器执行聚合查询
-
用于提高非行键列查询性能的二级索引
-
统计数据收集,以改进并行化,并指导优化之间的选择
-
跳过扫描筛选器以优化IN、LIKE和OR查询
-
行键加盐保证分配均匀,负载均衡