【Release Note】Apache Doris 2.1.1 版本正式发布!

Viewed 49

亲爱的社区小伙伴们,Apache Doris 2.1.1 版本已于 2024 年 4 月 3 日正式发布。该版本针对 2.1.0 版本出现的问题进行较为全面的优化,提交了若干改进项以及问题修复,进一步提升了系统的性能及稳定性,欢迎大家下载体验。

1 Answers

Release Note

1 行为变更

  • 改变了 Float 类型字段返回值序列化的方式,可以提升大数据量下 Float 返回的性能。
  • 将部分 Table Valued Function 变更为系统表active_queries(), workload_groups()
  • 由于show query/load profile stmt语句在实际用户场景中使用较少,该语句将不再支持与维护。同时,该功能在 Pipeline 与 PipelineX 引擎中不支持。
  • 升级 Arrow Flight 版本至 15.0.2 ,同时用户需要使用 ADBC 15.0.2 版本访问 Doris。

2 升级修复

  • 修复了从 2.0.x 滚动升级至 2.1.x 的过程中,部分 BE 节点升级出现 Core 的问题。
  • 修复了在 2.0.x 滚动升级至 2.1.x 过程中,使用 JDBC Catalog 会出现 Query 报错的问题。

3 新增功能

  • 默认开启列级权限
  • Pipeline 和 PipelineX 引擎能够在 K8s 下准确获取 CPU 核数
  • 支持读取 Parquet INT96 类型
  • 支持 IP 透传的协议,以方便在 FE 之前启用代理的同时还能获取客户端准确的 IP 地址,实现白名单权限控制
  • 增加对 Workload Queue 检测指标
  • 增加系统表 backend_active_tasks,以实时监测每个 BE 上活跃任务以及消耗的资源信息
  • 在 Spark Doris Connector 中增加 IPV4 和 IPV6 的支持
  • CCR 支持倒排索引
  • 支持查询 Experimental 的 Session Variable
  • 支持建立bitmap_union(bitmap_from_array())函数的物化视图
  • 支持对 Hive 中 HIVE_DEFAULT_PARTITION 分区进行裁剪
  • 支持set variable语句中使用函数
  • Arrow 序列化方式增加对 Variant 类型的支持

4 改进与优化

  • 当系统自动重启或者滚动升级之后,自动启动 Routine Load 导入任务。
  • 优化了 Routine Load 任务在各个 BE 上的分布方式,让各个 BE 负载更加均衡。
  • 升级 Spark 的版本,解决部分 Spark Load 的安全问题。
  • 在冷热分离过程中,自动跳过被删除的 Tablet。
  • Workload Group 支持对 Routine Load 的资源进行限制。
  • 大幅度优化多表物化视图查询改写性能。
  • 优化 Broker Load 任务对 FE 的内存使用。
  • 优化 Partition 的裁剪逻辑。
  • 优化 Tablet Schema Cache 对 BE 内存使用。
  • 多表物化视图增加更多对 JOIN 类型的支持,包括 INNER JOIN、LEFT OUTER JOIN、RIGHT OUTER JOIN、FULL OUTER JOIN、LEFT SEMI JOIN、RIGHT SEMI JOIN、LEFT ANTI JOIN、RIGHT ANTI JOIN。

5 Bug 修复

  • 修复 TopN 下推导致的问题
  • 修复 JAVA UDF 带来的内存泄露问题
  • 修复 ODBC 表备份恢复问题
  • 修复对 Variant 类型进行运算时常量折叠会导致 BE 出错的问题
  • 修复了部分导入任务失败时 Routine Load 卡住的问题
  • 修复 SEMI JOIN 结果不正确的问题
  • 当列的数据为空时,修复创建倒排索引会出错的问题
  • 修复<=> join操作会出现 Core 的问题
  • 修复部分列更新在有 Sequence 列结果准确性的问题
  • 修复 Select Outfile 导出到 Parquet 或者 ORC 格式的列类型映射问题
  • 修复在 Restore 过程中 BE 偶然 Core 的问题
  • 修复array_agg函数结果错误的问题
  • Variant 类型应当一直是 nullable
  • 修复 Schema Change 无法正确处理空 Block 的问题
  • 修复使用json_length()函数时,部分场景出错的问题
  • 修复 Iceberg 表无法正确处理 Date Cast 转换的问题
  • 修复 Variant 类型建立 Index 时出现的部分 Bug
  • 修复多个map_agg函数同时使用时结果不正确的问题
  • 修复money_format函数返回结果不正确的问题
  • 修复在高并发创建链接时,部分请求会卡住的问题