本文介紹雲資料庫ClickHouse24.2.16476企業發布的功能詳情。
新特性
為splitBlockIntoParts添加日誌。
Keeper新增效能分析助手。
在模式推斷緩衝中添加缺失的設定。
效能最佳化
降低Serverless對資源調整的響應間隔,以避免彈性升降不及時導致查詢被中斷。
調整以下參數,用以確保在一些情境下使用垂直演算法Merge,從而提升Merge效能。
vertical_merge_algorithm_min_rows_to_activate=0 vertical_merge_algorithm_min_bytes_to_activate=134217728 vertical_merge_algorithm_min_columns_to_activate=0
Replicated資料庫引擎下,只允許建立資料不落本地磁碟的表引擎,用以避免使用錯誤而導致的各種問題。
調整Keeper參數
digest_enabled=1
,開啟即時一致性校正。調整Keeper參數
async_replication=1
,在保證讀寫一致性的情況下,提升多個節點間資料複製的效能。最佳化了OSS的QPS和頻寬,使得在同樣的業務負載下減少了OSS的QPS和頻寬。
bug修複
調整Keeper參數
check_not_exists=1
和create_if_not_exists=1
,以避免ClickHouse-Server的一些調用下產生非預期報錯。修複了部分由於記憶體統計不準確而導致SQL提前結束的問題。
修複
S3::ClientCache
中的資料競爭問題。更多詳情,請參見Fix data race in S3::ClientCache。修複極少數情況下因為非預期的projections導致part設定為broken的情況。
在MergeJoin中添加缺失的稀疏刪除操作,用以修複資料Join時的一個bug。更多詳情,請參見Add missing `sparse` removal in MergeJoin。
支援取消PostgreSQL表的查詢。更多詳情,請參見PostgreSQL source support cancel query by kitaisreal · Pull Request。
修複
unbin
的緩衝區溢位問題。修複
SumIfToCountIfVisitor
和有符號整數中的問題。修複在約束中使用帶IN的子查詢時出現的未就緒集錯誤。更多詳情,請參見Add missing settings in schema inference cache。
修複當存在條件
IS NULL
時的不正確的最佳化。更多詳情,請參見Better handling of join conditions involving IS NULL checks。在DDLLoadingDependencyVisitor中忽略IN的子查詢。
修複收到ZooKeeper的硬體錯誤後,結束會話的問題。更多詳情,請參見Finalize session on hardware error from ZooKeeper。
正確列印Keeper中長時間處理的請求。
修複由於
non-monotonic CLOCK_MONOTONIC_COARSE
引發的jemalloc斷言問題。更多詳情,請參見Fix jemalloc assertion due to non-monotonic CLOCK_MONOTONIC_COARSE。修複maxIntersections導致的crash。
遞迴移除單射函數鏈的UniqInjectiveFunctionsEliminationPass。更多詳情,請參見UniqInjectiveFunctionsEliminationPass recursively removing chain of injective functions。
修複無法串連到選擇的任何副本返回的錯誤。
構建帶有分析器的jemalloc。
修複keeper關閉會話可能會導致後續串連出錯的問題。
修複keeper啟動時確保有足夠的全域線程池。
修複檔案系統快取導致的記憶體統計錯誤。