Apache Doris 1.2.2 Release 版本正式发布

亲爱的社区小伙伴们,我们很高兴地宣布,Apache Doris 于 2023 年 2 月 15 日迎来 1.2.2 Release 版本的正式发布!在新版本中,Apache Doris 团队修复了自 1.2.1 版本发布以来超过 200 个问题或性能改进项。同时,1.2.2 版本作为 1.2 LTS 的迭代版本,具备更高的稳定性,建议用户升级到这个版本

GitHub下载:https://github.com/apache/doris/releases/tag/1.2.2-rc01

官网下载页:https://doris.apache.org/zh-CN/download

New Feature

数据湖分析

  • 支持自动同步 Hive Metastore 元数据信息。 默认情况下外部数据源的元数据变更,如创建或删除表、加减列等操作不会同步给 Doris,用户需要使用 REFRESH CATALOG 命令手动刷新元数据。在 1.2.2 版本中支持自动刷新 Hive Metastore 元数据信息,通过让 FE 节点定时读取 HMS 的 notification event 来感知 Hive 表元数据的变更情况。参考文档:https://doris.apache.org/docs/dev/lakehouse/multi-catalog/

  • 支持读取 Iceberg Snapshot 以及查询 Snapshot 历史。 在执行 Iceberg 数据写入时,每一次写操作都会产生一个新的快照。默认情况下通过 Apache Doris 读取 Iceberg 表仅会读取最新版本的快照。在 1.2.2 版本中可以使用 FOR TIME AS OFFOR VERSION AS OF 语句,根据快照 ID 或者快照产生的时间读取历史版本的数据,也可以使用 iceberg_meta 表函数查询指定表的快照信息。参考文档:https://doris.apache.org/docs/dev/lakehouse/multi-catalog/iceberg

  • JDBC Catalog 支持 PostgreSQL、Clickhouse、Oracle、SQLServer。

  • JDBC Catalog 支持 insert into 操作。 在 Doris 中建立 JDBC Catalog 后,可以通过 insert into 语句直接写入数据,也可以将 Doris 执行完查询之后的结果写入 JDBC Catalog,或者是从一个 JDBC 外表将数据导入另一个 JDBC 外表。参考文档:https://doris.apache.org/docs/dev/lakehouse/multi-catalog/jdbc/

自动分桶推算

支持通过 DISTRIBUTED BY HASH(……) BUCKETS AUTO 语句设置自动分桶,系统帮助用户设定以及伸缩不同分区的分桶数,使分桶数保持在一个相对合适的范围内。参考文档:https://mp.weixin.qq.com/s/DSyZGJtjQZUYUsvfK0IcCg

新增函数

增加归类分析函数 width_bucket 。参考文档:https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/width-bucket/#description

Behavior Changes

默认情况下禁用 BE 的 Page Cache

关闭此配置以优化内存使用并降低内存 OOM 的风险,但有可能增加一些小查询的查询延迟。如果您对查询延迟敏感,或者具有高并发小查询场景,可以配置 disable_storage_page_cache=false 以再次启用 Page Cache。

增加新 Session 变量 group_by_and_having_use_alias_first

用于控制 group by 和 having 语句是否优先使用列的别名,而非从 From 语句里寻找列的名字,默认为false。

Improvement

Compaction 优化

  • 支持 Vetical Compaction。在过去版本中,宽列场景 Compaction 往往会带来大量的内存开销。在 1.2.2 版本中,Vertical Compaction 采用了按列组的方式进行数据合并,单次合并只需要加载部分列的数据,能够极大减少合并过程中的内存占用。在实际测试中,Vertical compaction 使用内存仅为原有 compaction 算法的 1/10,同时 Compaction 速率提升15%。

  • 支持 Segment Compaction。在过去版本中,当用户大数据量高频导入时可能会遇到 -238 以及 -235 问题,Segment Compaction 允许在导入数据的同时进行数据的合并,以有效控制 Segment 文件的数量,提升高频导入的系统稳定性。

参考文档:https://doris.apache.org/docs/dev/advanced/best-practice/compaction

数据湖分析

其他

BugFix

  • 修复了使用 Doris-Flink-Connectore 导入数据时的内存泄漏问题;#16430

  • 修复了 BE 可能的线程调度问题,并减少了 BE 线程耗尽导致的 Fragment_sent_timeout。

  • 修复了 datetimev2/decivalv3 的部分正确性和精度问题。

  • 修复了 Light Schema Change 功能的各种已知问题。

  • 修复了 bitmap 类型 Runtime Filter 的各种数据正确性问题。

  • 修复了 1.2.1 版本中引入的 CSV 读取性能差的问题。

  • 修复了 Spark Load 数据下载阶段导致的 BE OOM 问题。

  • 修复了从 1.1.x 版升级到 1.2.x 版时可能出现的元数据兼容性问题。

  • 修复了创建 JDBC Catalog 时的元数据问题。

  • 修复了由于导入操作导致的 CPU 使用率高的问题。

  • 修复了大量失败 Broker Load 作业导致的 FE OOM 问题。

  • 修复了加载浮点类型时精度丢失的问题。

  • 修复了 Stream Load 使用两阶段提交时出现的内存泄漏问题。

其他

添加指标以查看 BE 上的 Rowset 和 Segment 总数量 doris_be_all_rowset_numsdoris_be_all_segment_nums

{{o.name}}
{{m.name}}

猜你喜欢

转载自my.oschina.net/u/5735652/blog/7819608