Настройки клики

В статье описаны опции клики и способы ими управлять: как просматривать и изменять конфигурацию через Кипарис, CLI или веб-интерфейс. Статья будет полезна всем, кто хочет настроить клику или изменить её поведение.

Спеклет

Конфигурация клики описывается одним YSON-документом, который называется спеклет (Speclet).

Спеклет хранится в Кипарисе по пути //sys/strawberry/chyt/<alias>/speclet. Он представляет собой набор опций, которые интерпретируются контроллером во время запуска клики. На основе этих опций контроллер генерирует конечную конфигурацию CHYT-инстансов.

Пример спеклета клики ch_public на кластере ytdemo:

{
    "active": true,
    "enable_geodata": false,
    "family": "chyt",
    "instance_count": 1,
    "instance_cpu": 1,
    "instance_memory": {
        "chunk_meta_cache": 100000000,
        "clickhouse": 100000000,
        "clickhouse_watermark": 10,
        "compressed_cache": 100000000,
        "footprint": 500000000,
        "log_tailer": 100000000,
        "reader": 100000000,
        "watchdog_oom_watermark": 0,
        "watchdog_oom_window_watermark": 0
    },
    "pool": "chyt",
    "stage": "production"
}

Посмотреть опции клики

Вы можете посмотреть опции клики через:

  • просмотр спеклета в Кипарисе по пути //sys/strawberry/chyt/<alias>/speclet;
  • запуск в CLI команд yt clickhouse ctl get-speclet и yt clickhouse ctl status;
  • просмотр в веб-интерфейсе вкладки Speclet на Панели вкладок.

Изменить опции клики

Чтобы изменить опции клики, используйте:

  • редактирование файла в Кипарисе: откройте файл speclet по пути //sys/strawberry/chyt/<alias>/speclet и нажмите кнопку Edit;
  • консольную утилиту CLI: выполните команду yt clickhouse ctl set-option с нужной опцией из списка доступных опций;
  • веб-интерфейс: нажмите на кнопку Edit speclet в верхнем правом углу, в блоке Кнопки действий, или на вкладке Speclet на Панели вкладок.

Пошаговые инструкции и наглядные примеры установки опций смотрите в разделах Добавление вычислительных ресурсов и Настройка продвинутых параметров.

Доступные опции

Ниже перечислены опции клики, доступные для установки через веб-интерфейс или через команду CLI set-option (в квадратных скобках указаны значения по умолчанию).

Условно опции можно разбить на три блока, соответствующие вкладкам в диалоговом окне интерфейса спеклета.

  • Базовые опции — вкладка General

    Опция

    Описание

    active [false]

    Если опция выставлена, контроллер будет пытаться запустить соответствующую клике Vanilla-операцию. При значении false клика будет неактивной — не будет обрабатывать запросы и тратить ресурсы вычислительного пула. Опция может быть полезна для временного выключения клики с сохранением её конфигурации.

    В веб-интерфейсе запуск и остановка реализованы через Кнопки действий.

    pool

    Название вычислительного пула, в котором необходимо запускать операцию клики. Для установки этой опции у вас должно быть право Use на указанный вычислительный пул. Установка этой опции является обязательной для запуска операции клики под контроллером.

    preemption_mode [normal]

    Режим вытеснения, с которым будет запущена YTsaurus-операция клики. Настройка предназначена только для продвинутых пользователей. Если вы не уверены, что она вам нужна, рекомендуется оставить значение по умолчанию.

    Подробнее про вытеснение читайте в разделе Ресурсы и вытеснение.

    restart_on_controller_change [true]

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

    restart_on_speclet_change [true]

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

  • Вычислительные ресурсы — вкладка Resources

    Опция

    Описание

    instance_count [1]

    Количество инстансов клики.

    instance_cpu

    Количество CPU, которое будет выделено под каждый инстанс клики. Настройка предназначена только для продвинутых пользователей. Если вы не уверены, что она вам нужна, рекомендуется оставить значение по умолчанию.

    instance_total_memory

    Количество оперативной памяти в байтах, которое будет выделено под каждый инстанс клики. Настройка предназначена только для продвинутых пользователей. Если вы не уверены, что она вам нужна, рекомендуется оставить значение по умолчанию.

  • Продвинутые опции — вкладка Advanced

    Опция

    Описание

    Важно

    Настройки предназначены только для продвинутых пользователей. Если вы не уверены, что они вам нужны, рекомендуется оставить значения по умолчанию. Подробнее в разделе Настройка продвинутых параметров.

    enable_geodata [true]

    Автоматическая настройка системных словарей, необходимая для работы некоторых Geo-функций clickhouse.

    query_settings

    Словарь с настройками по умолчанию для всех запросов в клику.

    clickhouse_config

    Словарь с конфигурацией ClickHouse части инстансов CHYT. Эти настройки влияют на логику вычислительного движка ClickHouse и не отличаются от его оригинальных настроек.

    yt_config

    Словарь с конфигурацией YTsaurus части инстансов CHYT. Эта часть конфигурации будет записана в сгенерированную конфигурацию инстансов «as is», без изменений.

    enable_sticky_query_distribution [false]

    Распределить запросы по инстансам с учётом хешей этих запросов. Это позволяет увеличить эффективность использования кеша.

    query_sticky_group_size [2]

    Размер группы инстансов, выбранных детерминированно по хешу запроса. Среди этих инстансов будет равномерно выбран координатор для исполнения запроса. Имеет смысл только при enable_sticky_query_distribution=%true.

Полезные ссылки

Добавление вычислительных ресурсов
Настройка продвинутых параметров