これらの設定は 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 の場合、INSERT は
pow( 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 の場合、INSERT は max( 10, 1 * 1000 * (224 - 150 + 1) / (300 - 150) ) = 500 ミリ秒だけ遅延されます。
max_delay_to_mutate_ms
型
UInt64
デフォルト値
1000
未完了の mutation が多数ある場合の、MergeTree テーブル に対する mutation の最大遅延時間 (Milliseconds)