Essas configurações estão disponíveis em system.merge_tree_settings e são geradas automaticamente com base no código-fonte do ClickHouse.
max_delay_to_insert
O valor, em segundos, usado para calcular o atraso do INSERT caso o
número de partes ativas em uma única partição exceda o
valor de parts_to_delay_insert.
Possíveis valores:
- Qualquer número inteiro positivo.
O atraso (em milissegundos) do INSERT é calculado pela fórmula:
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)Por exemplo, se uma partição tiver 299 partes ativas e parts_to_throw_insert
= 300, parts_to_delay_insert = 150, max_delay_to_insert = 1, o INSERT é
adiado por pow( 1 * 1000, (1 + 299 - 150) / (300 - 150) ) = 1000
milissegundos.
A partir da versão 23.1, a fórmula foi alterada para:
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)Por exemplo, se uma partição tiver 224 partes ativas e parts_to_throw_insert
= 300, parts_to_delay_insert = 150, max_delay_to_insert = 1,
min_delay_to_insert_ms = 10, INSERT é adiado por max( 10, 1 * 1000 * (224 - 150 + 1) / (300 - 150) ) = 500 milissegundos.
max_delay_to_mutate_ms
Atraso máximo para realizar mutações em tabela MergeTree, em milissegundos, se houver muitas mutações não concluídas