版本通告|Apache Doris 1.1 Release 版本正式发布!

发布时间:2023-10-18 14:30

以下内容源自 Apache Doris 官网(https://doris.apache.org/ ),复制到浏览器打开。

亲爱的社区小伙伴们,我们很高兴地宣布,Apache Doris 在 2022 年 7 月 14 日迎来 1.1 Release 版本的正式发布!这是 Apache Doris 正式从 Apache 孵化器毕业后并成为 Apache 顶级项目后发布的第一个 Release 版本。

在 1.1 版本中,有 90 位 Contributor 为 Apache Doris 提交了超过 450 项优化和修复,感谢每一个让 Apache Doris 变得更好的你!

在 1.1 版本中,我们实现了计算层和存储层的全面向量化、正式将向量化执行引擎作为稳定功能进行全面启用,所有查询默认通过向量化执行引擎来执行,性能较之前版本有 3-5 倍的巨大提升。

在 1.1 版本中,增加了直接访问 Apache Iceberg 外部表的能力,支持对 Doris 和 Iceberg 中的数据进行联邦查询,扩展了 Apache Doris 在数据湖上的分析能力;在原有的 LZ4 基础上增加了 ZSTD 压缩算法,进一步提升了数据压缩率;修复了诸多之前版本存在的性能与稳定性问题,使系统稳定性得到大幅提升。

欢迎大家下载使用!

代码仓库:

https://github.com/apache/inc...

下载地址:

https://doris.apache.org/down...

源码地址:

https://github.com/apache/dor...

升级说明

向量化执行引擎默认开启

在 Apache Doris 1.0 版本中,我们引入了向量化执行引擎作为实验性功能。用户需要在执行 SQL 查询手工开启,通过 set batch_size = 4096 和 set enable_vectorized_engine = true 配置 session 变量来开启向量化执行引擎。

在 1.1 版本中,我们正式将向量化执行引擎作为稳定功能进行了全面启用,session 变量enable_vectorized_engine默认设置为 true,无需用户手工开启,所有查询默认通过向量化执行引擎来执行。

BE 二进制文件更名

BE 二进制文件从原有的 palo_be 更名为 doris_be ,如果您以前依赖进程名称进行集群管理和其他操作,请注意修改相关脚本。

Segment 存储格式升级

Apache Doris 早期版本的存储格式为 Segment V1,在 0.12 版本中我们实现了新的存储格式 Segment V2 ,引入了 Bitmap 索引、内存表、Page Cache、字典压缩以及延迟物化等诸多特性。从 0.13 版本开始,新建表的默认存储格式为 Segment V2,与此同时也保留了对 Segment V1 格式的兼容。

为了保证代码结构的可维护性、降低冗余历史代码带来的额外学习及开发成本,我们决定从下一个版本起不再支持 Segment v1 存储格式,预计在 Apache Doris 1.2 版本中将删除这部分代码,还请所有仍在使用 Segment V1 存储格式的用户务必在 1.1 版本中完成数据格式的转换。

操作手册请参考:

https://doris.apache.org/zh-C...

正常升级

按照官网上的集群升级文档进行滚动升级,可参考:

https://doris.apache.org/zh-C...

重要功能

支持数据随机分布 [实验性功能]

Issue/PR:#8259 #8041

在某些场景中(例如日志分析类场景),用户可能无法找到一个合适的分桶键来避免数据倾斜,因此需要由系统提供额外的分布方式来解决数据倾斜的问题。

因此通过在建表时可以不指定具体分桶键,选择使用随机分布对数据进行分桶DISTRIBUTED BY random BUCKET number,数据导入时将会随机写入单个 Tablet ,以减少加载过程中的数据扇出,并减少资源开销、提升系统稳定性。

支持创建 Iceberg 外部表 [实验性功能]

Issue/PR:#7391 #7981 #8179

Iceberg 外部表为 Apache Doris 提供了直接访问存储在 Iceberg 数据的能力。通过 Iceberg 外部表可以实现对本地存储和 Iceberg 存储的数据进行联邦查询,省去繁琐的数据加载工作、简化数据分析的系统架构,并进行更复杂的分析操作。

在 1.1 版本中,Apache Doris 支持了创建 Iceberg 外部表并查询数据,并支持通过 REFRESH 命令实现 Iceberg 数据库中所有表 Schema 的自动同步。

增加ZSTD压缩算法

Issue/PR:#8923 #9747

目前 Apache Doris 中数据压缩方法是系统统一指定的,默认为 LZ4。针对部分对数据存储成本敏感的场景,例如日志类场景,原有的数据压缩率需求无法得到满足。

在 1.1 版本中,用户建表时可以在表属性中设置"compression"="zstd" 将压缩方法指定为 ZSTD。在 25GB 1.1 亿行的文本日志测试数据中,最高获得了近 10 倍的压缩率、较原有压缩率提升了 53%,从磁盘读取数据并进行解压缩的速度提升了 30%

功能优化

更全面的向量化支持

在 1.1 版本中,我们实现了计算层和存储层的全面向量化,包括:

  • 实现了所有内置函数的向量化。
  • 存储层实现向量化,并支持了低基数字符串列的字典优化。
  • 优化并解决了向量化引擎的大量性能和稳定性问题。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号