Release 1.0.0

关键特性

该版本主要在三个主要领域进行了改进:性能、安全性和可用性。

  • 性能

    对引擎进行了新的性能特性增强,以进一步提高即席交互式查询的性能。这些增强包括:增强动态过滤器以使用更高效的bloom过滤器实现;以及优化动态过滤器的收集侧算子,以便能够尽快收集和应用动态过滤器。其他性能优化还包括引入谓词下推以允许OR谓词被推送到ORC读取器,以及启发式索引支持OR谓词对分片进行过滤。最后,为了减少插入和更新操作后ORC文件的数量,引入了ORC文件的自动压缩功能。

  • 安全性

    在本版本中,社区聚焦在进一步强化引擎的安全性。代码中解决了多个漏洞,并引入了审计日志。此外,还引入了一个新的功能,允许管理员对Catalog配置文件的敏感信息进行加密处理,比如数据源凭据。

  • 可用性

    可用性是本发行版的另一个重点关注的领域。为了提供数据库般的用户体验,社区引入了SQL迁移工具,该工具帮助将SQL语句从其他引擎迁移到openLooKeng中。其他可用性增强包括通过JMX监控ORC缓存的各项指标,以便管理员查看索引及数据缓存命中率;以及改进CACHE sql命令,以便为数据缓存提供更大的灵活性。此外,还对安装和部署脚本进行了更改,以支持包含ARM和x86节点的混合部署,并引入了新的脚本允许管理员基于容器部署openLooKeng服务。

详细特性描述见下表。

类别特性PR #s
安全新增审计日志功能。160
安全漏洞修复。113
处理CVEs问题。144
安装部署新增安装脚本支持基于Docker & Kubernetes部署和运行openLooKeng。50
支持在ARM 和. x86混合架构上部署openLooKeng。5
工具提供工具支持将Impala SQL迁移到ANSI SQL。52
SQL迁移工具的易用性增强,帮助用户轻松识别SQL语句之间的差异,并接受更改。159
ODBC Driver支持openLooKeng复杂数据类型,如ARRAY、JSON、MAP、ROW等。11 (hetu-odbc-gateway的repo) & 6 (hetu-odbc-driver的 repo)
支持双向滚动游标,以便于对表和结果集进行更简单的迭代。也支持设置游标到指定位置。10
启发式索引重构启发式索引,使其成为openLooKeng的一个插件,并使用HetuFileSystem Client。40
添加额外的配置,让管理员更好地控制索引缓存。例如,管理员现在可以设置索引缓存可以占用的最大内存。85
支持在执行计划阶段对包含OR谓词的查询进行分片过滤。93
增加会话属性,能够在服务运行时禁用启发式索引。126
优化器将OR等谓词推送到ORC读取器中,以实现数据过滤。103
执行流水线几个动态过滤器增强特性,如使用内部布隆过滤器提供更好的性能,以及改进的行过滤逻辑,以及添加状态存储监听器以收集新合并的动态过滤器。65、86、100、112、137
增强动态过滤并支持更多的底层block类型,启用block的行过滤,利用java向量化加速。101、117
ORC IUD/ACID支持基于阈值的数据压缩自动触发和处理,当对表进行修改操作时,无需用户干预数据压缩,并且查询性能不下降。(目前仅支持Hive)141
数据压缩操作后自动清理ORC文件。89
Catalog 管理对catalog配置文件中的敏感信息进行信息加密,比如密码。170
DC Connector支持元数据和执行计划缓存,以提升DC Connector的性能。128
ORC数据缓存通过JMX监控ORC缓存的各项指标。33、142
CACHE sql命令的可用性增强,为选择缓存哪些分区提供了更大的灵活性。90、99

获取文档

请参考:https://gitee.com/openlookeng/hetu-core/tree/1.0.0/hetu-docs/zh