ClickHouse v26.2 リリースノート

What's New in ClickHouse 26.2

後方互換性に関する変更

構文・クエリの変更点

ClickHouse v26.2では、いくつかの構文が廃止・変更された。

  • 空の JOIN USING() は構文エラーになった
  • ORDER BY のサブクエリは非対応になった
  • アナライザー無効時:IN句で別名参照する
    CREATE VIEW が失敗する場合がある
  • ALIAS 列への INSERT が禁止された
  • デデュプリケーションがデフォルト有効化

削除された機能・名称変更

既存環境からの移行時に注意が必要な破壊的変更。

変更種別 対象 詳細
コーデック削除 DEFLATE_QPL, ZSTD_QAT 利用不可
エンジン削除 Lazy database engine 廃止
テーブル改名 system.s3queue _metadata_cache に変更
ビュー削除 metric_log transposed_with_wide_view廃止

データ型・セキュリティの変更

  • Nullable(Tuple) サポート追加(設定フラグで有効化)
  • JSON型:高度な共有データがデフォルト有効
    → v25.8未満へのダウングレード不可
  • PostgreSQL DATE列:Date32として推論
  • joinGet/joinGetOrNull:SELECT権限を強制
  • CREATE TABLE AS:SHOW COLUMNS権限が必須

主な新機能

認証・新関数の追加

セキュリティと文字列・数値処理の強化。

  • TOTP(時間ベースワンタイムパスワード)認証追加
  • reverseBySeparator:区切り文字で逆順化
  • xxh3_128:高速ハッシュ関数
  • mergeTreeAnalyzeIndex():インデックス使用状況分析
  • cosineDistanceTransposed:コサイン距離近似
  • colorOKLABToSRGB / colorSRGBToOKLAB:色空間変換

テーブルエンジン・ストレージ強化

GA化と新エンジンの追加が相次いだリリース。

  • Text index GA化:配列カラムのサポートも追加
  • QBit GA化:正式版として本番利用可能に
  • Paimon REST カタログ対応
  • icebergLocalCluster 関数追加
  • lazy_load_tables:テーブルのオンデマンド読み込み

データレイク対応の強化

DeltaLake・Iceberg ともに機能が大幅拡充。

対象 追加機能
DeltaLake 削除ベクトル、macOS対応
Iceberg マニフェスト改善、PREWHERE最適化
GCS Google Cloud Storage サポート追加
S3Queue パーティショニング・バケッティング強化

パフォーマンス改善

クエリ最適化の強化

JOIN・サブクエリの実行効率が大幅に向上。

  • 相関サブクエリ:より多くのエンジンに対応
  • JOINフィルタープッシュダウン:
    ANY / SEMI / ANTI JOIN でも有効化
  • 等価集合最適化:複数 INNER JOIN で自動フィルタープッシュ
  • PRIMARY KEY:逆順読み取り最適化、決定論的式対応
  • ハッシュ結合の動的ディスパッチ改善

I/O・圧縮パフォーマンス

  • Parquet Reader V3:プリフェッチャー高速化
  • T64 コーデック:圧縮処理の高速化
  • LZ4:32バイトブロック展開の最適化
  • ファイルシステムキャッシュ:並列読み込み有効化
  • jemalloc:ダーティページパージング改善
  • AST メモリ:Enum 専用クラスで省メモリ化

監視・運用機能

新しいシステムテーブル

運用・デバッグに役立つシステムテーブルが多数追加。

  • system.user_defined_functions:UDF 一覧
  • system.zookeeper_info:ZooKeeper 情報
  • system.primes:素数テーブル
  • system.fail_points:フェイルポイント情報
  • system.jemalloc_stats:メモリプロファイラー
  • system.tokenizers:トークナイザー一覧

新しい設定オプション

細かな制御が可能になった設定値の追加。

  • add_minmax_index_for_time_columns
    時系列カラムに自動インデックス付与
  • use_skip_indexes_on_data_read:デフォルト有効化
  • statistics キャッシュ:デフォルト有効(300秒更新)
  • max_insert_block_size_bytes:INSERT サイズ制御

まとめ:v26.2 の注目ポイント

  • 後方互換性の破壊的変更が複数あり、移行時は要注意
  • Text index・QBit が GA になり本番利用の幅が広がった
  • DeltaLake・Iceberg のデータレイク対応がさらに強化
  • JOIN 最適化・圧縮改善など全体的なパフォーマンス向上

破壊的変更を確認しつつ、新機能を積極的に活用しよう!

参考文献

Thank you!