親愛的社區小夥伴們,Apache Doris 4.0.1 版本已於 2025 年 11 月 08 日正式發佈。此版本聚焦核心模塊的打磨與優化,在 AI & Search 方面實現了重要能力擴展,同時全面提升了 Lakehouse 與查詢引擎的穩定性和性能。
- GitHub 下載:https://github.com/apache/doris/releases
- 官網下載:https://doris.apache.org/download
行為變更
SHOW PARTITIONS命令不再支持 Iceberg 表,請直接使用 Iceberg 的$partitions系統表查看。#56985
新增功能
- 新增 mmh64_v2 函數,用於生成與其他三方庫相同的 Hash 結果。#57180
- 新增 json_hash 函數,支持對 JSONB 類型生成 Hash 值。#56962
- 新增 Binary 數據類型,並增加一系列函數 length、from_base64_binary、to_base64_bianry、sub_binary。#56648
- 新增 sort_json_object_keys / normalize_json_numbers_to_double 函數,用於對 JSONB 的 Key 進行排序。
- 新增與 MySQL 兼容的時間函數:UTC_DATE、UTC_TIME 及 UTC_TIMESTAMP。#57443
-
新增對 MaxCompute Schema 層級的支持。 #56874
- 相關文檔:https://doris.apache.org/docs/3.x/lakehouse/catalogs/maxcompu...
- JSON_OBJECT 函數支持使用 * 作為參數。#57256
功能改進
AI & Search
- 為 SEARCH 函數新增短語查詢、通配符查詢和正則查詢支持。#57372 #57007
- 擴展 SEARCH 函數參數,新增可選的 default_field 參數(默認列)和 default_operator 參數(指定多列查詢的布爾運算符為 "and" 或 "or")。#57312
- SEARCH 函數新增對 Variant 類型子列的搜索支持,可通過點號語法(如 variantColumn.subcolumn:關鍵詞)直接搜索 JSON 路徑中的特定字段。
- 將倒排索引的默認存儲格式由 V2 升級為 V3 版本。#57140
- 完善自定義分詞器 Pipeline 支持,新增 char_filter 組件;在 Analyzer 框架中新增 Basic Tokenizer 和 和 ICU Tokenizer 兩種內置分詞器支持;新增內置分詞器別名並支持組件同名配置,優化統一 Analyzer 框架。#57055
Lakehouse
-
新增會話變量
merge_io_read_slice_size_bytes來解決某些情況下,外表 Merge IO 讀放大嚴重的問題。- 相關文檔:https://doris.apache.org/docs/3.x/lakehouse/best-practices/op...
查詢
- 優化了 JOIN Shuffle 選擇算法 #56279
其他
- 優化了物理計劃中 Runtime Filter 序列化信息的大小 #56978
問題修復
AI & Search
- 修復非分詞字段的 SEARCH 查詢結果問題,支持在 MOW 表上執行 SEARCH 函數查詢 #56927
- 修復倒排索引在執行 IS NULL 謂詞過濾時的計算錯誤問題 #56964
Lakehouse
- 修復某些情況下,謂詞下推無法使用 Parquet Page Index 的問題 #55795
- 修復某些情況下外表查詢分片讀取丟失的問題 #57071
- 修復某些情況下,Hadoop 文件系統緩存開啓導致修改 Catalog 屬性不生效的問題 #57063
- 修復某些情況下,從舊版本升級時,連接屬性校驗導致元數據回放失敗的問題 #56929
- 修復某些情況下,Refresh Catalog 導致 FE 線程死鎖的問題 #56639
- 修復無法讀取由 Hive 轉換生成的 Iceberg 表的問題 #56918
- 修復某些情況下收集 Query Profile 導致 BE 宕機的問題 #56806
查詢
- 修復 datetime 類型在 Timezone 相關 Cast 時,邊界條件下結果錯誤的問題 #57422
- 修復部分 datetime 相關函數結果精度推導不正確的問題 #56671
- 修復 inf 作為 float 的謂詞條件時 Core 的問題 #57100
- 修復 explode 函數在可變參數下 Core 的問題 #56991
- 修復 decimal256 到 float 類型的 Cast 不穩定的問題 #56848
- 修復 Spill Disk 時可能出現重複調度導致 Core 的問題 #56755
- 修復偶發的錯誤調整 Mark Join 和其他 Join 順序的問題 #56837
- 修復部分命令未被正確轉發到 Master Frontend 執行的問題 #55185
- 修復偶現的窗口函數錯誤生成 Partition TopN 的問題 #56622
- 修復當同步物化視圖定義中存在關鍵字時,查詢可能報錯的問題 #57052
其他
- 禁止基於同步物化視圖創建另外一個同步物化視圖 #56912
- 修復 Profile 中存在內存未及時釋放問題 #57257