Параметры ClickHouse

Параметры сервера

Подробную информацию о параметрах сервера можно найти в официальной документации ClickHouse.

Вы можете настроить следующие параметры сервера ClickHouse:

  • background_buffer_flush_schedule_pool_size — количество потоков для выполнения фонового сброса данных.

    Рекомендуемое значение: (1—​2) * количество ядер процессора.

  • background_common_pool_size — количество потоков для освобождения памяти.

    Рекомендуемое значение: (0—​1) * количество ядер процессора.

  • background_distributed_schedule_pool_size — количество потоков для выполнения фоновых задач.

    Рекомендуемое значение: (1—​2) * количество ядер процессора.

  • background_fetches_pool_size — количество потоков для репликации данных.

    Рекомендуемое значение: (0—​1) * количество ядер процессора.

  • background_message_broker_schedule_pool_size — количество потоков для фонового вывода сообщений.

    Рекомендуемое значение: (1—​2) * количество ядер процессора.

  • background_move_pool_size — количество потоков для перемещений данных между дисками.

    Рекомендуемое значение: (0—​1) * количество ядер процессора.

  • background_pool_size — количество потоков для слияний и мутаций таблиц.

    Рекомендуемое значение: (1—​2) * количество ядер процессора.

  • background_merges_mutations_concurrency_ratio — отношение количества слияний и мутаций, которые могут выполняться одновременно, к количеству потоков background_pool_size. Например, если параметр принимает значение 2, а background_pool_size — 16, то сервер ClickHouse может одновременно выполнять 32 слияния.

  • background_schedule_pool_size — количество потоков для выполнения фоновых задач.

    Рекомендуемое значение: (8—​16) * количество ядер процессора.

  • mark_cache_size — приблизительный размер кэша меток в байтах.

    Рекомендуемое значение: 1—​5 ГБ.

  • max_concurrent_queries — максимальное количество одновременно обрабатываемых запросов. Если принимает значение "0", то ограничений нет.

    Рекомендуемое значение: (1—​2) * количество ядер процессора.

  • max_server_memory_usage — максимальный объем оперативной памяти в байтах, используемой сервером ClickHouse. Если принимает значение "0", то объем памяти определяется автоматически следующим образом: memory_amount * max_server_memory_usage_to_ram_ratio.

    Здесь:

    • memory_amount — общий объем оперативной памяти.

    • max_server_memory_usage_to_ram_ratio — доля оперативной памяти, используемой сервером ClickHouse. Если принимает значение "0", то сервер может использовать всю оперативную память. По умолчанию параметр не задан и воспринимается системой равным "0.9".

    Рекомендуемое значение: 90% от доступного объема оперативной памяти.

Параметры таблиц MergeTree

Таблицы семейства MergeTree позволяют использовать механизм репликации данных. Подробную информацию о MergeTree-параметрах можно найти в официальной документации ClickHouse.

Вы можете настроить следующие параметры MergeTree-таблиц:

  • max_bytes_to_merge_at_max_space_in_pool — максимальный общий размер таблиц, которые могут быть слиты, в байтах.

    Рекомендуемое значение: 1—​4 ГБ.

  • merge_max_block_size — количество строк, которые считываются в память из слитых таблиц.

    Рекомендуемое значение: 1024—​4096.

  • number_of_free_entries_in_pool_to_lower_max_size_of_merge — количество свободных записей в пуле или реплицированной очереди, при преуменьшении которого уменьшится максимальный размер слияния.

    Рекомендуемое значение: 1—​4.

  • max_suspicious_broken_parts — максимальное количество поврежденных партиций. При превышении этого значения отключается автоматическое удаление.