Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

max_delay_* MergeTree テーブル設定

これらの設定は system.merge_tree_settings で確認でき、ClickHouse のソースコードから自動生成されています。

max_delay_to_insert

UInt64
デフォルト値
1

単一のパーティション内のアクティブなパーツ数が parts_to_delay_insert の値を超えた場合に、 INSERT の遅延の計算に使用される、秒単位の値です。

設定可能な値:

  • 任意の正の整数。

INSERT の遅延 (Milliseconds) は、次の式で計算されます:

max_k = parts_to_throw_insert - parts_to_delay_insert
k = 1 + parts_count_in_partition - parts_to_delay_insert
delay_milliseconds = pow(max_delay_to_insert * 1000, k / max_k)

たとえば、あるパーティションにアクティブなパーツが 299 個あり、parts_to_throw_insert = 300、parts_to_delay_insert = 150、max_delay_to_insert = 1 の場合、INSERTpow( 1 * 1000, (1 + 299 - 150) / (300 - 150) ) = 1000 ミリ秒だけ遅延されます。

バージョン 23.1 以降、式は次のように変更されました:

allowed_parts_over_threshold = parts_to_throw_insert - parts_to_delay_insert
parts_over_threshold = parts_count_in_partition - parts_to_delay_insert + 1
delay_milliseconds = max(min_delay_to_insert_ms, (max_delay_to_insert * 1000)
* parts_over_threshold / allowed_parts_over_threshold)

たとえば、あるパーティションにアクティブなパーツが 224 個あり、parts_to_throw_insert = 300、parts_to_delay_insert = 150、max_delay_to_insert = 1、 min_delay_to_insert_ms = 10 の場合、INSERTmax( 10, 1 * 1000 * (224 - 150 + 1) / (300 - 150) ) = 500 ミリ秒だけ遅延されます。

max_delay_to_mutate_ms

UInt64
デフォルト値
1000

未完了の mutation が多数ある場合の、MergeTree テーブル に対する mutation の最大遅延時間 (Milliseconds)

Navigation