Apache Doris 2.1.7 版本正式发布

Apache Doris 2.1.7 版本正式发布

经验文章nimo972025-02-04 12:58:3313A+A-

亲爱的社区小伙伴们,Apache Doris 2.1.7 版本已于 2024 年 11 月 10 日正式发布。2.1.7 版本持续升级改进,同时在湖仓一体、异步物化视图、半结构化数据管理、查询优化器、执行引擎、存储管理、以及权限管理等方面完成了若干修复。欢迎大家下载使用。

  • 立即下载:https://doris.apache.org/download
  • GitHub 下载:https://github.com/apache/doris/releases

行为变更

  • 以下全局变量会被强制设置为下列默认值
  • enable_nereids_dml: true
  • enable_nereids_dml_with_pipeline: true
  • enable_nereids_planner: true
  • enable_fallback_to_original_planner: true
  • enable_pipeline_x_engine: true
  • 审计日志增加了新的列,参考:https://doris.apache.org/zh-CN/docs/admin-manual/audit-plugin/

新功能

01 异步物化视图

  • 异步物化视图增加属性 use_for_rewrite,用于控制是否参与透明改写

02 查询执行引擎

  • 在 Profile 中输出变更的 session variable 列表。
  • 增加了trim_in、ltrim_in 和 rtrim_in 函数的支持。
  • 增加了一些 URL 函数,包括对 to``p_level_domain、first_significant_subdomain 、cut_to_first_significant_subdomain 支持。
  • 增加了 bit_set 函数。
  • 增加了count_substrings 函数。
  • 增加 translate 和 url_encode 函数。
  • 增加 normal_cdf, to_iso8601, from_iso8601_date 函数。

03 存储管理

  • 增加了 information_schema.table_options 和 information_schema.``table_properties 系统表,支持查询建表时设置的一些属性。

使用参考:

table_options:https://doris.apache.org/docs/admin-manual/system-tables/information_schema/table_options/

table_properties:https://doris.apache.org/zh-CN/docs/admin-manual/system-tables/information_schema/table_properties/

  • 支持 bitmap_empty 作为默认值。
  • 增加了一个新的 Session 变量require_sequence_in_insert 来控制向 Unique Key 表进行insert into select 写入时,是否必须提供 Sequence 列。

04 其他

允许在 BE WebUI 页面生成火焰图。

改进提升

01 湖仓一体

  • 支持写入数据到 Hive Text 格式表。更多信息:https://doris.apache.org/zh-CN/docs/lakehouse/datalake-building/hive-build/
  • 使用 MaxCompute Open Storage API 访问 MaxCompute 数据。更多信息: https://doris.apache.org/zh-CN/docs/lakehouse/database/max-compute/
  • 支持 Paimon DLF Catalog。更多信息:https://doris.apache.org/zh-CN/docs/lakehouse/datalake-analytics/paimon/
  • 新增语法 table$partitions 语法支持直接查询 Hive 分区信息。更多参考:https://doris.apache.org/zh-CN/docs/lakehouse/datalake-analytics/hive/
  • 支持 brotli 压缩格式的 Parquet 文件读取。
  • 支持读取 Parquet 文件中的 DECIMAL 256 类型。
  • 支持读取 OpenCsvSerde 格式的 Hive 表。

02 异步物化视图

  • 细化了异步物化视图中构建时锁持有的粒度。

03 查询优化器

  • 优化了极端情况下统计信息收集和使用的准确性,以提升规划稳定性。
  • 支持在更多情况下生成 Runtime Filter,以提升查询性能。
  • 提升数值、日期和字符串函数的常量折叠能力,以提升查询性能。
  • 优化了列裁剪的算法,以提升查询性能。

04 查询执行引擎

  • 支持并行的 Prepare 降低短查询的耗时。
  • 修正了 Profile 中一些 Counter的名字,保持跟审计日志一致。
  • 增加了新的 Local Shuffle 规则,使得部分查询更快。

05 存储管理

  • Show Partitions 命令支持显示 Commit Version。
  • 建表时检查不合理的 Partition EXPR。
  • 优化 Routine Load EOF 时的调度逻辑。
  • Routine Load感知 Schema 变化。
  • 优化 Routine Load Task 超时逻辑。

06 其他

  • 支持通过 BE 配置关闭 BRPC 的内置服务端口。
  • 修复审计日志缺失字段以及重复记录的问题。

Bug 修复

01 湖仓一体

  • 修复了 INSERT OVERWRITE 的行为跟 Hive 不一致的问题。
  • 清理临时创建的文件夹,解决 HDFS 上空文件夹太多的问题。
  • 修复某些情况下,使用 JDBC Catalog 导致 FE 内存泄露的问题。
  • 修复某些情况下,使用 JDBC Catalog 导致 BE 内存泄露的问题。
  • 修复某些情况下,读取 Snappy 压缩格式错误的问题。
  • 修复某些情况下,FE 端 FileSystem 可能泄露的问题。
  • 修复某些情况下,通过 EXPLAIN VERBOSE 查看外表执行计划可能导致空指针的问题。
  • 修复无法读取 Paimon parquet 格式表的问题。
  • 修复 JDBC Oracle Catalog 兼容性改动引入的性能问题。
  • 禁止下推隐式转换后的谓词条件已解决 JDBC Catalog 某些情况下查询结果不正确的问题。
  • 修复 External Catalog 中表名大小写访问异常的一些问题。

02 异步物化视图

  • 修复用户指定的 Start Time 不生效的问题。
  • 修复嵌套物化视图不刷新的问题。
  • 修复删除重建基表后,物化视图可能不刷新的问题。
  • 修复分区补偿改写可能导致结果错误的问题。
  • 当 sql_select_limit 设置时,改写结果可能错误的问题。

03 半结构化管理

  • 修复了索引文件句柄泄露的问题。
  • 修复了特殊情况下倒排索引 count() 不准确的问题。
  • 修复了未开启 Light Schema Change 时 Variant 异常的问题。
  • 修复了 Variant 返回数组时内存泄漏的问题。

04 查询优化器

  • 修正了外表查询时,可能存在过滤条件 nullable 计算错误,导致执行异常的问题。
  • 修复范围比较表达式优化可能发生错误的问题。

05 查询执行引擎

  • match_regexp 函数不能正确处理空字符串的问题。
  • 解决在高并发场景下,Scanner 线程池卡死的问题。
  • 修复了 data_floor 函数结果错误的问题。
  • 修复了部分场景下,Cancel 消息不正确的问题。
  • 修复 Arrow Flight 打印太多的 Warn 日志的问题。
  • 解决部分场景下 Runtime Filter 发送失败的问题。
  • 修复了一些系统表查询的时候不能正常结束或者卡住的问题。
  • 修复了窗口函数结果不正确的问题。
  • 修复 ENCRYPT 和 DECRYPT 函数导致 BE Core 的问题。
  • 修复 CONV 函数结果错误的问题。

06 存储管理

  • Memtable 前移在多副本情况下,有机器宕机时导入失败的问题。
  • 导入过程中,Memtable 在 Flush 阶段时,统计的内存不准确。
  • 修复 Memtable前移多副本容错的问题。
  • 修复 Memtable前移 bvar 统计不准的问题。
  • 修复 S3 Load 进度汇报不准的问题。

07 权限管理

  • 修复了SHOW COLUMNS, SHOW SYNC, SHOW DATA FROM DB.TABLE 相关的权限问题。

08 Others

  • 修复 2.0 版本的审计日志插件在 2.1 版本无法使用的问题。
点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7