全部產品
Search
文件中心

ApsaraDB for ClickHouse:26.3社區相容版發布詳情

更新時間:Aug 04, 2026

本文介紹雲資料庫ClickHouse26.3 LTS社區相容版的主要變更內容,包括新特性、效能最佳化和改進。

版本概述

阿里雲ClickHouse社區相容版正式發布全新的長期支援版本26.3 LTS。作為繼25.3 LTS之後的又一年度大版本,26.3 LTS聚焦流批一體資料湖、原生倒排索引、高並發寫入穩定性、複雜分析查詢最佳化與開放生態擴充,旨在為您提供更高效、更穩定的即時分析能力。

升級亮點預覽

能力方向

核心提升

典型業務價值

資料湖生態

原生Apache Paimon支援、DataLakeCatalog自動掛載

湖倉一體無縫查詢,Flink CDC入湖情境即查即用

原生倒排索引

倒排索引GA,日誌/文本檢索效能提升7~10倍

替代外部搜尋引擎,降低儲存與營運成本

資料湖與OSS加速

Parquet頁尾SLRU緩衝、Iceberg中繼資料預取

I/O密集型查詢與OSS外部表格掃描2x~5x提速

複雜查詢最佳化

物化CTE、全類型JOIN智能重排序

複雜報表與多維分析SQL執行效率顯著提升

高維資料與寬表TTL

分桶Map點查提升2~49倍;TTL垂直合并

降低點查延遲與後台清理的記憶體開銷

開放生態

31種SQL方言相容

跨引擎SQL業務代碼即遷即用

資料湖生態重大突破:Apache Paimon與統一Catalog編目

從25.3到26.3 LTS,ClickHouse資料湖分析能力實現了跨越式升級,關鍵能力包括:

  • 原生Apache Paimon支援:26.3 LTS提供原生的paimon表函數與Paimon表引擎(含叢集並行查詢paimonCluster),支援直接對儲存在OSS、S3或HDFS上的Paimon表進行高效唯讀分析,匹配Flink CDC入湖情境。

  • DataLakeCatalog自動化掛載:支援將外部Metastore(如Hive Metastore、AWS Glue、阿里雲DLF等)直接掛載為ClickHouse資料庫。引擎會自動識別Catalog內的Iceberg、Paimon、Delta Lake及Hudi表,無需手動建表即可直接查詢。

  • 資料湖查詢多維加速

    • Parquet頁尾SLRU緩衝:預設啟用use_parquet_metadata_cache = 1,重複查詢相同Parquet檔案時,I/O讀請求最高可減少50%。

    • Iceberg中繼資料非同步預取:通過iceberg_metadata_async_prefetch_period_ms在後台保持本地中繼資料新鮮度,擺脫遠程Catalog瓶頸。

    • S3Queue增量高效拉取:有序模式下改用StartAfter語義,減少ListObjects頻率,降低OSS API成本並縮短延遲。

全文檢索索引重磅升級:原生倒排索引生產可用

26.3 LTS的原生倒排索引與全文檢索索引能力正式達到Production-Ready(GA)狀態。

  • 效能成倍躍升:在文本模糊比對與關鍵詞檢索情境中,啟用倒排索引後冷查詢效能可提升7~10倍。在典型日誌查詢測試集(如GitHub Events)中,複雜檢索時延從193秒降至0.42秒。

  • 無縫相容SQL文法:無需引入外部Elasticsearch或第三方檢索外掛程式,直接通過INDEX idx_text content TYPE inverted建立索引,即可自動加速HAS()LIKE / ILIKE以及JSON欄位提取檢索。

  • 低存算成本:基於ClickHouse獨特的列存倒排結構,索引體積大幅小於傳統搜尋引擎,極大降低了日誌、Trace與文本分析情境的儲存成本。

計算與最佳化器

物化CTE(MATERIALIZED CTE)

26.3 LTS引入了物化CTE文法。通過MATERIALIZED關鍵字,ClickHouse將CTE的計算結果暫存至臨時記憶體表中,避免冗餘計算,大幅提升複雜報表與多維分析SQL的執行效率。

樣本:

SET enable_materialized_cte = 1;

WITH top_users AS MATERIALIZED (
    SELECT user_id, count() AS cnt
    FROM events
    GROUP BY user_id
    ORDER BY cnt DESC
    LIMIT 1000
)
SELECT *
FROM top_users
INNER JOIN (SELECT user_id FROM top_users WHERE ...) ON ...;

全類型JOIN智能重排序

26.3 LTS的基於代價的最佳化器(CBO)能力進一步延伸,除了標準的INNER JOINLEFT/RIGHT JOIN外,現已全面支援對LEFT ANTI JOINSEMI JOIN以及FULL JOIN進行自動Build/Probe側交換。最佳化器會根據表統計資訊,自動將資料量較小的一側構建為Hash Table,有效避免因手動SQL順序不當導致的記憶體溢出(OOM)。

儲存引擎與資料類型

分桶Map(Sharded Map)

針對使用Map類型儲存使用者畫像標籤、動態特徵的情境,26.3 LTS引入了分桶物理序列化布局。通過將Map內部的資料按Key進行Hash分桶儲存,在進行單Key尋找時,查詢效率可提升2~49倍。

樣本:

CREATE TABLE user_profiles (
    id UInt64,
    attributes Map(String, UInt64)
) ENGINE = MergeTree
ORDER BY id
SETTINGS map_serialization_version = 'with_buckets', max_buckets_in_map = 32;

寬表TTL清理:垂直合并(Vertical Merge)

26.3 LTS正式為TTL DELETE引入了垂直合并演算法:優先對主鍵與TTL列進行合并過濾,無需讀取無關的寬列資料,顯著降低後台清理資料時的I/O與記憶體開銷。

自適應浮點數壓縮演算法(ALP Codec)

全新的浮點數無損壓縮編碼CODEC(ALP, ZSTD)正式上線。ALP(Adaptive Lossless floating-Point)專門針對工業監控、時序指標等情境中的Float32/Float64資料進行了結構化壓縮最佳化,壓縮比與解壓速度均優於經典的Gorilla編碼。

開放生態:跨引擎SQL方言相容(Polyglot)

通過整合開源Polyglot解析庫,26.3 LTS原生支援包含Snowflake、BigQuery、PostgreSQL、Spark、Presto、DuckDB在內的31種外部資料庫SQL方言。使用者只需設定:

SET dialect = 'polyglot', polyglot_dialect = 'snowflake';

即可直接複用現有的SQL業務代碼。

關鍵效能最佳化

查詢執行與最佳化器

  • 預設啟用查詢條件緩衝、運算式JIT編譯以及JOIN運行時過濾器,顯著降低重複掃描與大表JOIN開銷。

  • RIGHT / FULL JOIN改用ConcurrentHashJoin,部分情境效能提升最多2倍;新增JOIN順序最佳化,根據統計資訊自動重排多表JOIN。

  • 主鍵與分區鍵索引裁剪能力擴充:主鍵支援任意確定性運算式用於資料跳過,分區鍵被確定性函數鏈包裹時仍可分區裁剪。

  • ORDER BY ... LIMIT N查詢可通過跳過索引與動態閾值過濾器顯著減少掃描行數。

儲存引擎與資料跳過

  • 預設啟用Parquet reader v3,支援頁級過濾下推與PREWHERE;資料湖讀取按處理線程數自動調整管道,多核機器上提升約40倍。

  • 預設啟用讀取期間流式跳過索引過濾;文本索引支援更多謂詞形式並可用於PREWHERE。

  • 重度分區裁剪情境下,10K+ part表的SELECT查詢速度提升最多8倍;Iceberg表支援PREWHERE最佳化與非同步中繼資料預取。

分布式與並存執行

  • 預設啟用並行分布式INSERT SELECT,在每個分區上獨立執行;分布式IN子查詢自動添加DISTINCT,顯著減少分區間暫存資料表傳輸。

  • 分布式索引分析支援SharedMergeTree / 共用儲存情境,可按part數量與索引大小觸發;並行副本支援懶物化並改進負載分配,減少長尾延遲。

函數與索引

  • LIKE / Regex自動重寫為更高效的實現並預設啟用;StringZilla加速大小寫敏感字串搜尋;SIMD動態分發加速邏輯函數與布爾列轉換。

記憶體、可觀測性與網路

  • mark、未壓縮和頁緩衝使用獨立jemalloc arena降低片段,jemalloc髒頁在獨立線程中清理;系統日誌表新增minmax / bloom_filter索引加速排查。

  • 分散式查詢中block的序列化與壓縮可卸載到管道線程,提升巨量資料量傳輸效率。

效能基準:ClickBench版本對比

根據官方ClickBench版本基準測試(Cold Queries視角),26.3 LTS相比上一個LTS版本25.3,在綜合效能表現上取得了持續提升:

測試維度

26.3 LTS相對25.3 LTS提升

冷查詢綜合時延

總體耗時降低8%~15%

資料湖與儲存掃描

I/O密集型查詢與OSS外部表格掃描效能2x~5x提速

寬表TTL整理消耗

峰值記憶體佔用下降超過40%

文本/日誌檢索

倒排索引加持下,複雜檢索時延從193秒降至0.42秒

高維Map點查

分桶Map單Key尋找效率提升2~49倍

實用小功能

26.3 LTS還包含了一系列提升開發與營運體驗的功能:

  • 自然排序(naturalSortKey):支援按照人類直覺對包含數位字串排序,例如使file2.txt正確排在file10.txt前面。

  • 樹狀EXPLAIN輸出:執行EXPLAIN pretty=1, compact=1即可擷取結構清晰、視覺效果佳的執行計畫樹。

  • 不可用分區容錯控制:提供max_skip_unavailable_shards_nummax_skip_unavailable_shards_ratio參數,綁定控制叢集大表查詢時跳過故障節點的比例。

升級建議

升級前準備

  1. 複製/測試環境驗證:先在複製環境或測試環境部署新版本,評估版本變更對現有配置和查詢的影響。

  2. 檢查依賴相容性:確認用戶端驅動、第三方工具與新版本的相容性。

重點關注事項

  • 實驗性功能驗證:物化CTE及Polyglot方言在目前的版本標註為Experimental,建議在生產環境廣泛應用前先在測試叢集進行業務驗證。

  • 效能迴歸測試:升級後對比關鍵查詢的執行時間,確保Parquet緩衝、倒排索引、JOIN重排序等最佳化生效。

  • 監控警示調整:根據新增指標和變更調整監控閾值。

總結

ClickHouse 26.3 LTS是一個兼具廣度與深度的年度大版本:

  • 資料湖與開放生態層面,原生Paimon支援與31種SQL方言相容打通了湖倉一體與跨引擎複用的關鍵路徑。

  • 查詢與分析層面,倒排索引GA、物化CTE、JOIN重排序與分桶Map顯著拓展了ClickHouse在日誌檢索、複雜分析和高維點查情境的能力邊界。

  • 穩定性與成本層面,TTL垂直合并與ALP Codec從資料清理到儲存壓縮全方位降低了營運複雜度。

阿里雲ClickHouse團隊已完成社區26.3 LTS版本的雲上適配與全量相容性驗證。您可以在阿里雲ClickHouse控制台快速建立26.3 LTS執行個體或將現有執行個體升級至最新版本,體驗更高效、更穩定的即時分析能力。