> ## 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.

> Системная таблица с информацией о частях MergeTree

# system.parts

<div id="description">
  ## Описание
</div>

Содержит информацию о частях таблиц [MergeTree](/ru/reference/engines/table-engines/mergetree-family/mergetree).

Каждая строка описывает одну часть данных.

<div id="columns">
  ## Столбцы
</div>

* `partition` ([String](/ru/reference/data-types)) — Идентификатор партиции (строковое представление, полученное из выражения ключа партиционирования таблицы).
* `name` ([String](/ru/reference/data-types)) —
  Имя части данных. По структуре имени части можно определить многие аспекты данных, а также схемы приёма и слияния. Формат имени части выглядит следующим образом:

```text theme={null}
<partition_id>_<minimum_block_number>_<maximum_block_number>_<level>_<data_version>
```

* Определения:
  * `partition_id` - определяет ключ партиционирования
  * `minimum_block_number` - определяет минимальный номер блока в части. ClickHouse всегда сливает последовательные блоки
  * `maximum_block_number` - определяет максимальный номер блока в части
  * `level` - увеличивается на единицу при каждом дополнительном слиянии части. Уровень 0 указывает, что это новая часть, которая ещё не подвергалась слиянию. Важно помнить, что все части в ClickHouse всегда неизменяемы
  * `data_version` - необязательное значение, которое увеличивается при изменении части (опять же, изменённые данные всегда записываются только в новую часть, поскольку части неизменяемы)

* `uuid` ([UUID](/ru/reference/data-types)) — UUID части данных.

* `part_type` ([String](/ru/reference/data-types)) — Формат хранения части данных. Возможные значения: `Wide` — каждый столбец хранится в отдельном файле, `Compact` — все столбцы хранятся в одном файле. Формат хранения данных управляется настройками `min_bytes_for_wide_part` и `min_rows_for_wide_part` таблицы MergeTree.

* `active` ([UInt8](/ru/reference/data-types)) — Флаг, указывающий, активна ли часть данных. Если часть данных активна, она используется таблицей. В противном случае она будет удалена. Неактивные части данных появляются после операций слияния и мутации.

* `marks` ([UInt64](/ru/reference/data-types)) — Количество засечек. Чтобы получить приблизительное количество строк в части данных, умножьте marks на гранулярность индекса (обычно 8192) (эта подсказка не работает для адаптивной гранулярности).

* `rows` ([UInt64](/ru/reference/data-types)) — Количество строк.

* `files` ([UInt64](/ru/reference/data-types)) — Количество файлов в части данных.

* `bytes_on_disk` ([UInt64](/ru/reference/data-types)) — Суммарный размер всех файлов частей данных в байтах.

* `data_compressed_bytes` ([UInt64](/ru/reference/data-types)) — Общий размер сжатых данных в части данных. Все вспомогательные файлы (например, файлы с метками) не учитываются.

* `data_uncompressed_bytes` ([UInt64](/ru/reference/data-types)) — Общий размер несжатых данных в части данных. Все вспомогательные файлы (например, файлы с метками) не учитываются.

* `primary_key_size` ([UInt64](/ru/reference/data-types)) — Объём памяти (в байтах), занимаемый значениями первичного ключа в файле primary.idx/cidx на диске.

* `marks_bytes` ([UInt64](/ru/reference/data-types)) — Размер файла меток.

* `secondary_indices_compressed_bytes` ([UInt64](/ru/reference/data-types)) — Общий размер сжатых данных вторичных индексов в части данных. Все вспомогательные файлы (например, файлы с метками) не учитываются.

* `secondary_indices_uncompressed_bytes` ([UInt64](/ru/reference/data-types)) — Общий размер несжатых данных для вторичных индексов в части данных. Все вспомогательные файлы (например, файлы с метками) не включаются.

* `secondary_indices_marks_bytes` ([UInt64](/ru/reference/data-types)) — Размер файла меток вторичных индексов.

* `modification_time` ([DateTime](/ru/reference/data-types)) — Время изменения каталога с частью данных. Обычно оно соответствует времени создания части данных.

* `remove_time` ([DateTime](/ru/reference/data-types)) — Время, в которое часть данных стала неактивной.

* `refcount` ([UInt32](/ru/reference/data-types)) — Количество мест, в которых используется часть данных. Значение больше 2 указывает на то, что часть данных используется в запросах или слияниях.

* `min_date` ([Date](/ru/reference/data-types)) — Минимальное значение ключа даты в части данных.

* `max_date` ([Date](/ru/reference/data-types)) — Максимальное значение ключа даты в части данных.

* `min_time` ([DateTime](/ru/reference/data-types)) — Минимальное значение ключа даты/времени в части данных.

* `max_time` ([DateTime](/ru/reference/data-types)) — Максимальное значение ключа даты и времени в части данных.

* `partition_id` ([String](/ru/reference/data-types)) — идентификатор партиции.

* `min_block_number` ([Int64](/ru/reference/data-types)) — Минимальный номер частей данных, из которых состоит текущая часть после слияния.

* `max_block_number` ([Int64](/ru/reference/data-types)) — Максимальное количество частей данных, из которых состоит текущая часть после слияния.

* `level` ([UInt32](/ru/reference/data-types)) — Глубина дерева слияний. Ноль означает, что текущая часть была создана операцией вставки, а не в результате слияния других частей.

* `data_version` ([UInt64](/ru/reference/data-types)) — число, используемое для определения того, какие мутации должны быть применены к части данных (мутации с версией выше, чем у data\_version).

* `primary_key_bytes_in_memory` ([UInt64](/ru/reference/data-types)) — Объём памяти (в байтах), занимаемый значениями первичного ключа. Будет равен 0, если `primary_key_lazy_load` включён и ключ не загружен. Если значение не равно нулю, эти байты находятся в самой части и учитываются в `jemalloc.mergetree_arena.active_bytes`. Они НИКОГДА не учитываются в `PrimaryIndexCacheBytes` — для каждой части это взаимоисключающие варианты: индекс находится либо в части (эта метрика), либо в общем `PrimaryIndexCache` (другая метрика), в зависимости от `primary_key_lazy_load` и `use_primary_key_cache`.

* `primary_key_bytes_in_memory_allocated` ([UInt64](/ru/reference/data-types)) — Объём памяти (в байтах), зарезервированный под значения первичного ключа. Равен 0, если `primary_key_lazy_load` включён и ключ не загружен. Если значение не равно нулю, входит в `jemalloc.mergetree_arena.active_bytes`. О связи с `PrimaryIndexCacheBytes` см. примечание к `primary_key_bytes_in_memory`.

* `index_granularity_bytes_in_memory` ([UInt64](/ru/reference/data-types)) — Объём памяти (в байтах), используемой значениями гранулярности индекса (будет равен 0, если primary\_key\_lazy\_load=1 и use\_primary\_key\_cache=1). Если значение не равно нулю, эти байты частично принадлежат и учитываются в `jemalloc.mergetree_arena.active_bytes`.

* `index_granularity_bytes_in_memory_allocated` ([UInt64](/ru/reference/data-types)) — Объём памяти (в байтах), зарезервированной для значений гранулярности индекса (будет равен 0, если primary\_key\_lazy\_load=1 и use\_primary\_key\_cache=1). Если значение отлично от нуля, оно входит в `jemalloc.mergetree_arena.active_bytes`.

* `is_frozen` ([UInt8](/ru/reference/data-types)) — Флаг, указывающий на наличие резервной копии данных партиции. 1 — резервная копия существует. 0 — резервной копии нет. Подробнее см. FREEZE PARTITION.

* `database` ([String](/ru/reference/data-types)) — Название базы данных.

* `table` ([String](/ru/reference/data-types)) — Название таблицы.

* `engine` ([String](/ru/reference/data-types)) — Название движка таблицы без параметров.

* `disk_name` ([String](/ru/reference/data-types)) — Имя диска, на котором хранится data part.

* `path` ([String](/ru/reference/data-types)) — Абсолютный путь к папке, содержащей файлы части данных.

* `hash_of_all_files` ([String](/ru/reference/data-types)) — sipHash128 для сжатых файлов.

* `hash_of_uncompressed_files` ([String](/ru/reference/data-types)) — sipHash128 несжатых файлов (включая файлы marks, индексный файл и т. д.).

* `uncompressed_hash_of_compressed_files` ([String](/ru/reference/data-types)) — sipHash128 данных в сжатых файлах, вычисленный так, как если бы они были несжатыми.

* `delete_ttl_info_min` ([DateTime](/ru/reference/data-types)) — Минимальное значение ключа даты и времени для правила DELETE в TTL.

* `delete_ttl_info_max` ([DateTime](/ru/reference/data-types)) — Максимальное значение ключа даты и времени в правиле TTL DELETE.

* `move_ttl_info.expression` ([Array(String)](/ru/reference/data-types)) — Массив выражений. Каждое выражение задаёт правило TTL MOVE.

* `move_ttl_info.min` ([Array(DateTime)](/ru/reference/data-types)) — Массив значений даты и времени. Каждый элемент задаёт минимальное значение ключа для правила TTL MOVE.

* `move_ttl_info.max` ([Array(DateTime)](/ru/reference/data-types)) — Массив значений даты и времени. Каждый элемент содержит максимальное значение ключа для правила TTL MOVE.

* `default_compression_codec` ([String](/ru/reference/data-types)) — Имя кодека, используемого для сжатия этой части данных (если для столбцов явно не задан кодек).

* `recompression_ttl_info.expression` ([Array(String)](/ru/reference/data-types)) — выражение TTL.

* `recompression_ttl_info.min` ([Array(DateTime)](/ru/reference/data-types)) — Минимальное значение вычисленного TTL-выражения в этой части. Используется, чтобы понять, есть ли в ней хотя бы одна строка с истёкшим TTL.

* `recompression_ttl_info.max` ([Array(DateTime)](/ru/reference/data-types)) — Максимальное значение вычисленного TTL-выражения в данной части. Используется, чтобы понять, содержит ли эта часть все строки с истёкшим TTL.

* `group_by_ttl_info.expression` ([Array(String)](/ru/reference/data-types)) — выражение TTL.

* `group_by_ttl_info.min` ([Array(DateTime)](/ru/reference/data-types)) — Минимальное значение вычисленного выражения TTL в этой части данных. Используется, чтобы понять, есть ли в ней хотя бы одна строка с истекшим TTL.

* `group_by_ttl_info.max` ([Array(DateTime)](/ru/reference/data-types)) — Максимальное значение вычисленного TTL-выражения в этой части. Используется, чтобы понять, содержатся ли в ней все строки с истёкшим TTL.

* `rows_where_ttl_info.expression` ([Array(String)](/ru/reference/data-types)) — выражение TTL.

* `rows_where_ttl_info.min` ([Array(DateTime)](/ru/reference/data-types)) — Минимальное значение вычисленного TTL-выражения в этой части. Используется, чтобы определить, есть ли здесь хотя бы одна строка с истёкшим TTL.

* `rows_where_ttl_info.max` ([Array(DateTime)](/ru/reference/data-types)) — Максимальное значение вычисленного TTL-выражения в этой части. Используется, чтобы понять, содержатся ли здесь все строки с истёкшим TTL.

* `projections` ([Array(String)](/ru/reference/data-types)) — Список имён проекций, вычисленных для этой части данных.

* `visible` ([UInt8](/ru/reference/data-types)) — Флаг, указывающий, видна ли эта часть для SELECT-запросов.

* `creation_tid` ([Tuple(UInt64, UInt64, UUID)](/ru/reference/data-types)) — идентификатор транзакции, которая создала этот объект или пытается его создать.

* `removal_tid_lock` ([UInt64](/ru/reference/data-types)) — хеш значения removal\_tid, используемый для блокировки объекта при удалении.

* `removal_tid` ([Tuple(UInt64, UInt64, UUID)](/ru/reference/data-types)) — идентификатор транзакции, которая удалила этот объект или пытается его удалить

* `creation_csn` ([UInt64](/ru/reference/data-types)) — CSN транзакции, в результате которой был создан этот объект

* `removal_csn` ([UInt64](/ru/reference/data-types)) — CSN транзакции, в результате которой был удалён этот объект

* `has_lightweight_delete` ([UInt8](/ru/reference/data-types)) — Флаг, указывающий, содержит ли часть маску легковесного удаления.

* `last_removal_attempt_time` ([DateTime](/ru/reference/data-types)) — Время последней попытки сервера удалить эту часть.

* `removal_state` ([String](/ru/reference/data-types)) — Текущее состояние процесса удаления части данных.

<div id="example">
  ## Пример
</div>

```sql theme={null}
SELECT * FROM system.parts LIMIT 1 FORMAT Vertical;
```

```text theme={null}
Row 1:
──────
partition:                             tuple()
name:                                  all_1_4_1_6
part_type:                             Wide
active:                                1
marks:                                 2
rows:                                  6
bytes_on_disk:                         310
data_compressed_bytes:                 157
data_uncompressed_bytes:               91
secondary_indices_compressed_bytes:    58
secondary_indices_uncompressed_bytes:  6
secondary_indices_marks_bytes:         48
marks_bytes:                           144
modification_time:                     2020-06-18 13:01:49
remove_time:                           1970-01-01 00:00:00
refcount:                              1
min_date:                              1970-01-01
max_date:                              1970-01-01
min_time:                              1970-01-01 00:00:00
max_time:                              1970-01-01 00:00:00
partition_id:                          all
min_block_number:                      1
max_block_number:                      4
level:                                 1
data_version:                          6
primary_key_bytes_in_memory:           8
primary_key_bytes_in_memory_allocated: 64
is_frozen:                             0
database:                              default
table:                                 months
engine:                                MergeTree
disk_name:                             default
path:                                  /var/lib/clickhouse/data/default/months/all_1_4_1_6/
hash_of_all_files:                     2d0657a16d9430824d35e327fcbd87bf
hash_of_uncompressed_files:            84950cc30ba867c77a408ae21332ba29
uncompressed_hash_of_compressed_files: 1ad78f1c6843bbfb99a2c931abe7df7d
delete_ttl_info_min:                   1970-01-01 00:00:00
delete_ttl_info_max:                   1970-01-01 00:00:00
move_ttl_info.expression:              []
move_ttl_info.min:                     []
move_ttl_info.max:                     []
```

<div id="see-also">
  ## См. также
</div>

* [Семейство движков MergeTree](/ru/reference/engines/table-engines/mergetree-family/mergetree)
* [TTL для столбцов и таблиц](/ru/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl)
