openLooKeng V1.2.0 发布
自开源以来,openLooKeng 社区得到越来越多朋友的支持。社区内,小伙伴们对 openLooKeng 的性能给予了肯定和赞赏,同时也给出了许多有价值的建议。暖春 3 月,在众人的期待下,openLooKeng 迎来了新版本 V1.2.0。openLooKeng V1.2.0 是在旧版本的基础上进行优化,并基于小伙伴们的体验和建议,新增一些技术,以提高引擎性能,争取为大家带来更丝滑流畅的体验。
于引擎内核来说,主要增强两个维度:融合分析场景和性能。
查询容错增强,提高引擎执行的可靠性
在批查询处理运行的过程中,当某个工作节点出现故障时,可在其他节点上恢复任务,比如对 Hive 数据源的 insert 和 create table as select 操作。针对长时间运行的批查询处理任务,相比上一个版本,稳定性和可靠性有了极大的提升。
查询性能的优化:基于 StarTree 的查询预聚合能力增强
StarTree 旨在优化低延迟、聚合查询语句。我们通过 StarTree 查询预聚合能力,为用户构建所需要的不同维度和不同聚合操作的 cube。在以后的查询过程中,如果遇到任何可匹配的聚合子查询,引擎将直接从 cube 中读取数据,避免在原始表上执行查询,从而提高查询性能。
引入 CTE(公共表表达式)优化技术,减少内存使用
在执行计划优化过程中引入 CTE(公共表表达式)技术。当一个复杂查询中,存在某个子查询(例如 with 语句)被多次使用,优化器会为重复的子查询自动生成一个 CTE 节点,该 CTE 节点的输出会被执行计划流程中的多个父节点消费。也就是说,重复的子查询只会执行一次,化繁为简, 同时也减少内存占用,引擎获得更好的性能。
通用算子下推框架,让 Connectors 参与到执行计划优化中
为了让算子下推过程更加简单灵活,我们采用新的通用算子下推框架,让每个 Connector 可以参与到执行计划优化中。引擎在进行执行计划优化时,能够自行应用 Connector 的优化规则,使得算子下推过程变得更加高效。
增强 HIVE ORC 的数据维护性能
该特性优化了数据写入和数据修改(更新和删除)的处理速度,并不影响『读性能』的流畅度;支持并发访问 Hive Metastore,提高元数据操作性能,从而进一步优化数据写入和修改的性能。
于引擎门户来说,主要集中在南向生态方面的优化。
HBase Connector 性能优化
针对单表查询性能的提升,我们新增了分片算法。另外,该性能支持 HBase 访问 Snapshot 的模式,从而提升多并发查询性能。
数据源 UDF(User-Defined Function)支持下推
引擎支持外部函数(UDF)的注册,也支持将其下推到 JDBC 数据源。为了让大家拥有更好的体验,用户可以在不迁移自己数据源 UDF 的情况下,使用已有的 UDF, 提高 UDF 的复用度。
以上便是 openLooKeng 新版本 V1.2.0 在性能优化上较为亮眼的地方。当然,作为大数据领域的关键项目,openLooKeng 十分看重引擎的易用性和安全性。针对这两点,新版本 V1.2.0 做出如下增强:
易用性 | 增强 Admin Dashboard UI 用户体验
优化定时全量加载导致的 UI 页面卡顿,
增强查询历史和查询结果的分页显示,
优化新增连接器的参数配置,
UI 界面支持 Kerberos 和密码登录,支持查询历史按用户进行过滤。
安全性 | 基于 Ranger 的细粒度权限管控:支持行过滤和列掩码
增加行过滤和列掩码,增加认证用户模拟权限控制,提供更细化的权限控制粒度。
看了这么多,是不是很想动手一试?感兴趣的朋友可以下载体验。
新版本下载地址: https://openlookeng.io/zh-cn/download.html
如果您对新版本 V1.2.0 有其他建议,欢迎发邮件至 users@openlookeng.io 告知我们。openLooKeng 社区感谢朋友们的支持,期待并欢迎更多朋友们的参与。
欢迎加入 openLooKeng 社区,一起做点有意思的事儿,让大数据更简单!
openLooKeng 开源社区官方网站: https://openlookeng.io/zh-cn/
openLooKeng 代码仓地址: https://gitee.com/openlookeng
版权声明: 本文为 InfoQ 作者【openLooKeng】的原创文章。
原文链接:【http://xie.infoq.cn/article/a2e45ef965272756809971883】。文章转载请联系作者。
评论