[Документация Yandex Cloud](../../index.md) > [Yandex StoreDoc](../index.md) > [Концепции](index.md) > Настройки Yandex StoreDoc

# Настройки Yandex StoreDoc

При [создании](../operations/cluster-create.md) или [изменении](../operations/update.md#change-mongod-config) кластера Yandex StoreDoc можно задать настройки, которые относятся к Yandex StoreDoc.

Метки рядом с названием настройки позволяют определить, с помощью какого интерфейса задается значение этой настройки: консоль управления, CLI или [API](../../glossary/rest-api.md).

В зависимости от выбранного интерфейса одна и та же настройка будет представлена по-разному. Например, **Max incoming connections** в консоли управления соответствует:

* `max_incoming_connections` в gRPC или CLI;
* `maxIncomingConnections` в REST API.


В шардированном кластере некоторые настройки доступны только для определенных [ролей хостов](sharding.md#shard-management).

## Зависимость настроек от класса хостов {#settings-instance-dependent}

Значения некоторых настроек Yandex StoreDoc могут быть автоматически скорректированы при изменении класса хостов:

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

Список настроек, зависящих от класса хостов:

* [Net → Max incoming connections](#setting-max-incoming-connections).
* [Engine config → Cache size gb](#setting-engine-cache-size).

## Настройки СУБД уровня кластера {#dbms-cluster-settings}

- **Storage**{#setting-storage} <code><b><small>Все интерфейсы</small></b></code>

  {% note info %}

  Настройка недоступна для хостов с ролью `MONGOS` шардированного кластера.

  Для хостов с ролью `MONGOCFG` доступна только настройка **Engine config → Cache size gb**.

  {% endnote %}


  - **Journal → Commit interval**{#setting-journal-commit-interval}
  
    Интервал в миллисекундах между сохранениями данных журнала Yandex StoreDoc на диск.

    Минимальное значение — `1`, максимальное значение — `500`, значение по умолчанию — `300`.


  - **Wired tiger**{#setting-wired-tiger}
  
    Настройки движка хранения данных:
    
    - **Collection config → Block compressor**{#setting-block-compressor}
    
      Настройка сжатия данных. Установленное здесь значение будет работать только для новых коллекций. Также вы можете переопределить его для отдельных коллекций и индексов.

      - `none` — сжатие отключено.
      - `snappy` — использование библиотеки [snappy](https://google.github.io/snappy/) для сжатия данных. При выборе этой настройки в большинстве случаев сжатие и распаковка будут быстрее, чем при использовании библиотеки `zlib`, но итоговый размер файлов будет на 20—100% больше.
      - `zlib` — использование библиотеки [zlib](http://www.zlib.net/) для сжатия данных. Этот способ работает медленнее `snappy`, но в большинстве случаев лучше сжимает данные.


    - **Engine config → Cache size gb**{#setting-engine-cache-size}

      Максимальный размер внутреннего кеша, используемого для хранения данных (в гигабайтах). Эта настройка не влияет на объем RAM, используемый для построения индекса.

      Минимальное значение — `0.25` (256 МБ). Максимальное значение и значение по умолчанию [зависят от выбранного класса хостов](#settings-instance-dependent) и задаются формулами:

      - Максимальное значение — `0,9 × <объем_RAM_на_хосте>`.
      - Значение по умолчанию — `0,5 × <объем_RAM_на_хосте>`.

      Например, для хостов класса s1.medium (8 vCPU, 32 ГБ) максимальное значение настройки — `28.8`, значение по умолчанию — `16`.


    - **Index config → Prefix compression**{#setting-prefix-compression}

      Определяет, будет ли выполняться сжатие префиксов для индексов. Изменение параметра влияет на новые индексы, но не влияет на уже созданные.

      Значение по умолчанию — `true` (сжатие префиксов включено).


- **Operation profiling**{#setting-operation-profiling} <code><b><small>Все интерфейсы</small></b></code>

  {% note info  %}

  Настройки недоступны для хостов с ролью `MONGOS` шардированного кластера.

  {% endnote %}

  Настройки профилировщика СУБД. Профилировщик собирает данные о запросах. Затем на основе этих данных формируется стратегия оптимизации запросов.

  - **Mode**{#setting-operation-profiling-mode}
  
    Режим работы профилировщика СУБД:

    - `off` — профилирование выключено;
    - `slowOp` (по умолчанию) — собирается информация только о медленных операциях (выполняющихся дольше порога, заданного настройкой [Slow op threshold](#setting-slow-op-threshold));
    - `all` — собирается информация обо всех выполняющихся запросах.


  - **Slow op sample rate**{#setting-slow-sample-rate}

    Доля медленных операций, которые следует профилировать или логировать. Параметр влияет на журнал диагностики и на профилировщик, если он включен.

    Минимальное значение — `0`, максимальное значение — `1`, значение по умолчанию — `1`.


  - **Slow op threshold**{#setting-slow-op-threshold}
  
    Время выполнения операции (в миллисекундах), при превышении которого она будет считаться медленной.

    Минимальное значение — `0`, максимальное значение — `36000000` (10 часов), значение по умолчанию — `300`.


- **Net**{#setting-net} <code><b><small>Все интерфейсы</small></b></code>

  Настройки сетевого взаимодействия.

  - **Max incoming connections**{#setting-max-incoming-connections}

    Максимальное количество входящих соединений.

    Минимальное значение — `10`, максимальное значение [зависит от выбранного класса хостов](#settings-instance-dependent) и равно объему RAM на хосте в МБ, но не более `16384`. Значение по умолчанию: `1024`.

    Подробнее в разделе [Ограничения на количество подключений](../operations/connect/index.md#connection-limits).

  - **Compression → Compressors**{#setting-compressors}

    Список методов сжатия, которые может использовать хост с ролью `MONGOD` или `MONGOS` для сжатия сетевых сообщений. Порядок перечисления методов важен.

    Значение `disabled` отключает сжатие. Значение по умолчанию — `snappy,zstd,zlib`.


- **Audit Log**{#setting-audit-log} <code><b><small>Все интерфейсы</small></b></code>

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

  - **Filter**{#setting-filter}

    Настройка определяет, какие события аудита будут записаны в лог. Входным параметром служит любое поле из сообщения аудита в формате JSON-строки.

    Например, чтобы логировать только события аудита, связанные с пользователями `example-user` и `new-user`, укажите:

    ```json
    { "user": { $in: [ "example-user", "new-user" ] } }
    ```

  {% note info %}

  Вы также можете [настроить](../../audit-trails/operations/create-trail.md) выгрузку [аудитных логов](../at-ref.md) кластера в [трейл](../../audit-trails/concepts/trail.md) с помощью сервиса [Yandex Audit Trails](../../audit-trails/index.md).

  {% endnote %}


- **Set parameter**{#setting-set-parameter}

  - **Enable flow control**{#setting-enable-flow-control} <code><b><small>Все интерфейсы</small></b></code>

    Определяет, будет ли контролироваться скорость, с которой основной хост выполняет операции записи. Включение параметра гарантирует, что у хостов-реплик метрика «большинство записало изменение» будет не больше предустановленного значения в 10 секунд.

    Значение по умолчанию — `false` (контроль скорости отключен).


  - **Min snapshot history window in seconds**{#setting-min-snapshot-history-window-in-seconds} <code><b><small>Все интерфейсы</small></b></code>

    {% note info %}

    Настройка доступна только для хостов с ролью `MONGOD`.

    {% endnote %}

    Время в секундах, в течение которого хранится история снапшотов.

    Возможные значения — от нуля и выше, значение по умолчанию — `60`. Увеличение значения настройки увеличивает использование диска.