> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Настройки primary_key_* для таблиц семейства MergeTree

> Настройки ClickHouse для таблиц семейства MergeTree из сгенерированной группы primary_key_*.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Тип</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>По умолчанию</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Изменяется без перезапуска
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Эти настройки доступны в [system.merge\_tree\_settings](/docs/ru/reference/system-tables/merge_tree_settings) и автоматически создаются на основе исходного кода ClickHouse.

<div id="primary_key_compress_block_size">
  ## primary\_key\_compress\_block\_size
</div>

<SettingsInfoBlock type="NonZeroUInt64" default_value="65536" />

Размер блока сжатия для первичного ключа; фактический размер сжимаемого блока.

<div id="primary_key_compression_codec">
  ## primary\_key\_compression\_codec
</div>

<SettingsInfoBlock type="String" default_value="ZSTD(3)" />

Кодек сжатия, используемый для первичного ключа; первичный ключ достаточно мал и кэшируется,
поэтому по умолчанию используется сжатие ZSTD(3).

<div id="primary_key_lazy_load">
  ## primary\_key\_lazy\_load
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Загружать первичный ключ в память
при первом использовании, а не при инициализации таблицы. Это может сэкономить память
при большом количестве таблиц.

<div id="primary_key_ratio_of_unique_prefix_values_to_skip_suffix_columns">
  ## primary\_key\_ratio\_of\_unique\_prefix\_values\_to\_skip\_suffix\_columns
</div>

<SettingsInfoBlock type="Float" default_value="0.9" />

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