> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> На этой странице приведён список часто используемых слов и фраз, связанных с ClickHouse, а также их определений.

# Глоссарий

<div id="atomicity">
  ## Атомарность
</div>

Атомарность гарантирует, что транзакция (серия операций с базой данных) рассматривается как единое неделимое целое. Это означает, что либо выполняются все операции в рамках транзакции, либо не выполняется ни одна. Пример атомарной транзакции — перевод денег с одного банковского счёта на другой. Если на любом этапе перевода происходит сбой, транзакция не выполняется, и деньги остаются на первом счёте. Атомарность гарантирует, что деньги не будут потеряны и не возникнут из ниоткуда.

<div id="block">
  ## Блок
</div>

Блок — это логическая единица организации обработки и хранения данных. Каждый блок содержит данные в столбцовом формате, которые обрабатываются совместно для повышения производительности при выполнении запроса. Обрабатывая данные блоками, ClickHouse эффективно использует ядра CPU, сводя к минимуму промахи кэша и обеспечивая векторизованное выполнение. ClickHouse использует различные алгоритмы сжатия, такие как LZ4, ZSTD и Delta, для сжатия данных в блоках.

<div id="cluster">
  ## Кластер
</div>

Группа узлов (серверов), совместно выполняющих хранение и обработку данных.

<div id="cmek">
  ## CMEK
</div>

Ключи шифрования, управляемые клиентом (CMEK), позволяют клиентам использовать ключ своего сервиса управления ключами (KMS) для шифрования ключа данных на диске ClickHouse и защиты данных при хранении.

<div id="dictionary">
  ## Словарь
</div>

Словарь — это структура данных типа «ключ-значение», удобная для работы с различными справочниками. Это мощная возможность, которая позволяет эффективно использовать словари в запросах, что во многих случаях эффективнее, чем `JOIN` со справочными таблицами.

<div id="distributed-table">
  ## Distributed таблица
</div>

Distributed таблица в ClickHouse — это особый тип таблицы, который сам не хранит данные, а предоставляет единое представление для распределённой обработки запросов на нескольких серверах кластера.

<div id="granule">
  ## Гранула
</div>

Гранула — это батч строк в несжатом блоке. При чтении данных ClickHouse обращается к гранулам, а не к отдельным строкам, что ускоряет обработку данных в аналитических рабочих нагрузках. По умолчанию гранула содержит 8192 строки. Основной индекс содержит по одной записи на гранулу.

<div id="incremental-materialized-view">
  ## Incremental materialized view
</div>

В ClickHouse incremental materialized view — это тип materialized view, который обрабатывает и агрегирует данные в момент вставки. Когда новые данные вставляются в исходную таблицу, materialized view выполняет заранее определённый SQL-запрос агрегации только для вновь вставленных блоков и записывает агрегированные результаты в целевую таблицу.

<div id="lightweight-update">
  ## Легковесное обновление
</div>

Легковесное обновление в ClickHouse — это экспериментальная возможность, которая позволяет обновлять строки в таблице с помощью стандартного синтаксиса SQL UPDATE, но вместо перезаписи целых столбцов или частей данных (как при традиционных мутациях) создаёт «патч-части», содержащие только обновлённые столбцы и строки. Эти обновления сразу становятся видны в запросах SELECT за счёт применения патчей, однако физически данные обновляются только в ходе последующих слияний.

<div id="mark-file">
  ## Файл меток
</div>

Файл меток в ClickHouse — это файл, в котором хранятся «метки», то есть записи индекса, помогающие ClickHouse быстро определять, где в файлах данных находятся конкретные диапазоны данных.

<div id="materialized-view">
  ## Materialized view
</div>

Materialized view в ClickHouse — это механизм, который автоматически выполняет запрос к данным при их вставке в исходную таблицу и сохраняет преобразованные или агрегированные результаты в отдельной целевой таблице, чтобы ускорить выполнение запросов.

<div id="mergetree">
  ## MergeTree
</div>

MergeTree в ClickHouse — это движок таблицы, предназначенный для высоких скоростей приёма и больших объёмов данных. Это основной движок хранения в ClickHouse, который предоставляет такие возможности, как столбцовое хранение, настраиваемое разбиение на партиции, разреженные первичные индексы и поддержка фоновых слияний данных.

<div id="mutation">
  ## Мутация
</div>

Мутация в ClickHouse — это операция, которая изменяет или удаляет существующие данные в таблице, обычно с помощью команд ALTER TABLE ... UPDATE или ALTER TABLE ... DELETE. Мутации выполняются асинхронно в фоновом режиме и переписывают целиком все затронутые изменением части данных, а не изменяют отдельные строки на месте.

<div id="on-the-fly-mutation">
  ## Мутация на лету
</div>

Мутации на лету в ClickHouse — это механизм, благодаря которому изменения или удаления становятся видимыми в последующих `SELECT`-запросах сразу после отправки мутации, без ожидания завершения фонового процесса мутации.

<div id="parts">
  ## Части
</div>

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

<div id="partitioning-key">
  ## Ключ партиционирования
</div>

Ключ партиционирования в ClickHouse — это SQL-выражение, заданное в предложении PARTITION BY при создании таблицы. Он определяет, как данные логически группируются в партиции на диске. Каждое уникальное значение ключа партиционирования образует отдельную физическую партицию, что позволяет эффективно выполнять такие операции управления данными, как удаление, перемещение или архивирование целых партиций.

<div id="primary-key">
  ## Первичный ключ
</div>

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

<div id="projection">
  ## Проекция
</div>

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

<div id="refreshable-materialized-view">
  ## Refreshable materialized view
</div>

Refreshable materialized view — это тип materialized view, который периодически заново выполняет свой запрос для всего набора данных и сохраняет результат в целевую таблицу. В отличие от incremental materialized views, refreshable materialized views обновляются по расписанию и поддерживают сложные запросы, включая JOIN и UNION, без ограничений.

<div id="replica">
  ## Реплика
</div>

Копия данных, хранящихся в базе данных ClickHouse. Для обеспечения избыточности и надежности можно иметь любое количество реплик одних и тех же данных. Реплики используются совместно с движком таблицы ReplicatedMergeTree, который позволяет ClickHouse поддерживать синхронизацию нескольких копий данных между разными серверами.

<div id="shard">
  ## Сегмент
</div>

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

<div id="skipping-index">
  ## Индекс пропуска данных
</div>

Индексы пропуска данных используются для хранения небольших объёмов метаданных на уровне нескольких последовательных гранул, что позволяет ClickHouse не сканировать нерелевантные строки. Индексы пропуска данных — это лёгкая альтернатива проекциям.

<div id="sorting-key">
  ## Ключ сортировки
</div>

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

<div id="sparse-index">
  ## Разреженный индекс
</div>

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

<div id="table-engine">
  ## Движок таблицы
</div>

Движки таблиц в ClickHouse определяют, как данные записываются, хранятся и читаются. MergeTree — самый распространённый движок таблицы; он позволяет быстро выполнять вставку больших объёмов данных, которые обрабатываются в фоновом режиме.

<div id="ttl">
  ## TTL
</div>

Time To Live (TTL) — это возможность ClickHouse, которая автоматически перемещает, удаляет или агрегирует столбцы или строки по истечении определённого периода времени. Это позволяет эффективнее управлять хранилищем, поскольку вы можете удалять, перемещать или архивировать данные, к которым вам больше не требуется частый доступ.
