phoenix?
优点
1. 命令行和java客户端使用都很简单。尤其是java客户端直接面向JDBC接口编程,封装且优化了Hbase很多细节。
2. 在单表操作上性能比Hive handler好很多(但是handler也有可能会升级加入斜处理器相关聚合等特性)
3. 支持多列的二级索引,列数不限。其中可变索引时列数越多写入速度越慢,不可变索引不影响写入速度(参考:
https://github.com/forcedotcom/phoenix/wiki/Secondary-Indexing#mutable-indexing)。
4. 对Top-N查询速度远超Hive(参考:
https://github.com/forcedotcom/phoenix/wiki/Performance#top-n)
5. 提供对rowkey分桶的特性,可以实现数据在各个region的均匀分布(参考:
https://github.com/forcedotcom/phoenix/wiki/Performance#salting)
6. 低侵入性,基本对原Hbase的使用没什么影响
7. 提供的函数基本都能cover住绝大多数需求了
8. 与Hive不同的是,Phoenix的sql语句更接近标准sql规范。
缺点
1. Phoenix创建的表Hbase可以识别并使用,但是使用Hbase创建的表,Phoenix不能识别,因为Phoenix对每张表都有其相应的元数据信息
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有