Настройка СУБД ClickHouse

Вы можете:

  • изменить значение параметра;
  • указать значение для незаданного параметра. Для этого удалите // перед параметром и присвойте ему значение. Например, чтобы установить максимальное время неактивности сессии — 1 час, удалите // перед параметром max_session_timeout и присвойте ему значение в секундах:

    3 max_session_timeout = 3600
  • указать дополнительные параметры, с которыми можно ознакомиться в официальной документации ClickHouse.

Важно

Некорректные настройки могут вывести кластер из строя.

Чтобы изменить настройки СУБД:

  1. Выберите проект, в котором заказан кластер ClickHouse.
  2. В главном меню портала перейдите в раздел Ресурсы → Базы данных Managed Service for ClickHouse.
  3. Нажмите на строку кластера, в котором нужно изменить настройки СУБД.
  4. Перейдите на вкладку Настройки СУБД.

  5. Измените значения параметров:

    • default_database — база данных, к которой нужно подключаться по умолчанию, если имя базы данных явно не указано в команде;
      1. База данных должна быть создана в ClickHouse. Если указана несуществующая база данных, сервер может не запуститься или запросы будут завершаться с ошибкой.
      2. Значение чувствительно к регистру. Например, mydb и MyDB — это разные базы данных.
      3. Может быть задано значение системной базы данных (например, system), если это соответствует логике использования.
    • disableProtocols — отключение определённых сетевых протоколов (например, HTTP, TCP) для повышения безопасности:

      • http — отключение протокола HTTP;
      • tcp — отключение протокола TCP;
      • interserver — отключение межсерверного взаимодействия;

        Примечание

        По умолчанию все протоколы включены.

    • max_session_timeout — максимальное время неактивности сессии (в секундах). Примеры значений:

      • 0 — без ограничения;
      • 3600 — 1 час;
    • async_load_databases — асинхронная загрузка баз данных при старте сервера:

      • false — асинхронная загрузка выключена;
      • true — асинхронная загрузка включена;
    • max_thread_pool_size — максимальное количество потоков в пуле для выполнения запросов. Должно быть целым числом > 0. Примеры значений: 4, 16;

    • max_send_message_size — максимальный размер отправляемого сообщения в байтах. Примеры значений:

      • -1 — размер сообщений не ограничен;
      • 1048576 — 1 МБ;
      • 1073741824 — 1 ГБ;
    • max_concurrent_queries — максимальное количество одновременно выполняемых запросов. Должно быть целым числом > 0. Примеры значений: 50, 500;

    • default_session_timeout — время неактивности сессии по умолчанию (в секундах). Должно быть меньше либо равно значению параметра max_session_timeout. Должно быть целым числом ≥ 0. Примеры значений:

      • 0 — без ограничения;
      • 3600 — 1 час;
    • max_server_memory_usage — максимальное использование оперативной памяти сервером (в байтах). Должно быть целым числом ≥ 0. Примеры значений:

      • 0 — без ограничения;
      • 34359738368 — 32 ГБ;
    • uncompressed_cache_size — размер кеша для несжатых данных (в байтах). Должно быть целым числом ≥ 0. Примеры значений:

      • 0 — кеш отключен;
      • 1073741824 — 1 ГБ;
    • max_receive_message_size — максимальный размер принимаемого gRPC-сообщения в байтах. Примеры значений:

      • -1 — размер сообщения не ограничен;
      • 1048576 — 1 МБ;
      • 1073741824 — 1 ГБ;
    • total_memory_profiler_step — шаг для профилирования использования памяти (в байтах). Должно быть целым числом > 0. Примеры значений:

      • 4194304 — 4 МБ;
      • 67108864 — 64 МБ;
    • validate_tcp_client_information — проверка информации о TCP-клиенте:

      • false — проверка выключена;
      • true — проверка включена;
    • concurrent_threads_soft_limit_num — мягкое ограничение на количество одновременно работающих потоков. Должно быть целым числом ≥ 0. Примеры значений:

      • 0 — без ограничения;
      • 32;
    • builtin_dictionaries_reload_interval — интервал перезагрузки встроенных словарей (в секундах). Должно быть целым числом > 0. Примеры значений:

      • 3600 — 1 час;
      • 604800 — 1 неделя;
    • max_server_memory_usage_to_ram_ratio — отношение максимального использования памяти сервером к объёму оперативной памяти (RAM). Должно быть числом от 0 до 1. Примеры значений:

      • 0.5 — 50% от RAM;
      • 1.0 — 100% от RAM;

        Примечание

        Обычно значение устанавливается в диапазоне от 0.5 до 0.9, чтобы оставить часть памяти для других процессов операционной системы и избежать нехватки памяти.

        Например, если у вас 64 ГБ RAM, и вы установите значение 0.8, то ClickHouse будет использовать до 51,2 ГБ оперативной памяти.

    • total_memory_tracker_sample_probability — вероятность отслеживания использования памяти. Должно быть числом от 0 до 1. Примеры значений:

      • 0 — отслеживание использования памяти отключено;
      • 0.1 — вероятность составляет 10%;
      • 1 — использование памяти всегда отслеживается.

    • default_password_type — тип хеширования паролей по умолчанию. Примеры значений:
      • plaintext — пароль хранится в открытом виде (без хеширования);
      • sha256 — хеширование с использованием SHA-256;
      • double_sha1 — двойное хеширование SHA-1, используется для совместимости с MySQL;
    • custom_settings_prefixes — список префиксов для пользовательских настроек. Примеры значений:
      • custom_ — только настройки с префиксом custom_ считаются пользовательскими;
      • custom_ test_ — только настройки с префиксами custom_ и test_ считаются пользовательскими;

        Примечание

        Если параметру custom_settings_prefixes не присвоить значение, пользовательские настройки будут недоступны, кроме тех, что были явно зарегистрированы через конфигурацию сервера, роли или ограничения.

        Если администратор добавил настройки через конфигурацию сервера или роли, например:

        <t1cloud>
         <profiles>
         <default>
         <custom_timeout>30</custom_timeout>
         <custom_retries>5</custom_retries>
         </default>
         </profiles>
        </t1cloud>

        то при // custom_settings_prefixes будут доступны только эти настройки:

        • custom_timeout — ожидание операции в секундах, после чего произойдёт ошибка или повтор операции;
        • custom_retries — количество повторов операции при сбое.

        Любые другие пользовательские настройки будут недоступны.

    • table_engines_require_grant — требование привилегии CREATE для использования определённых движков таблиц:

      • false — привилегия CREATE не требуется;
      • true — привилегия CREATE требуется;
    • select_from_system_db_requires_grant — требование привилегии SELECT для выполнения запросов к системным базам данных:

      • false — привилегия SELECT не требуется;
      • true — привилегия SELECT требуется;
    • settings_constraints_replace_previous — замена ограничений настроек:

      • false — новые ограничения добавляются к существующим (не заменяют их);
      • true — новые ограничения заменяют существующие;
    • on_cluster_queries_require_cluster_grant — требование привилегии CLUSTER для запросов ON CLUSTER:

      • false — привилегия CLUSTER не требуется;
      • true — привилегия CLUSTER требуется;
    • users_without_row_policies_can_read_rows политики доступа к строкам:

      • false — требуются политики доступа
      • trueполный доступ (без политик);
    • select_from_information_schema_requires_grant — требование привилегии SELECT для выполнения запросов к information_schema:

      • false — привилегия SELECT не требуется;
      • true — привилегия SELECT требуется.
  6. Нажмите на кнопку .

Мы ответили на ваш вопрос?