Перейти к основному содержимому
Перейти к основному содержимому

system.parts

Содержит информацию о частях таблиц MergeTree.

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

Столбцы:

  • partition (String) – Имя раздела. Чтобы узнать, что такое раздел, обратитесь к описанию запроса ALTER.

    Форматы:

    • YYYYMM для автоматического разбиения по месяцам.
    • any_string при ручном разбиении.
  • name (String) – Имя части данных. Структура именования части может использоваться для определения многих аспектов данных, приема и паттернов слияния. Формат имени части следующий:

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

  • part_type (String) — Формат хранения части данных.

    Возможные значения:

    • Wide — Каждый столбец хранится в отдельном файле в файловой системе.
    • Compact — Все столбцы хранятся в одном файле в файловой системе.

    Формат хранения данных контролируется настройками min_bytes_for_wide_part и min_rows_for_wide_part таблицы MergeTree.

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

  • marks (UInt64) – Количество меток. Для получения приблизительного числа строк в части данных умножьте marks на гранулярность индекса (обычно 8192) (этот совет не работает для адаптивной гранулярности).

  • rows (UInt64) – Количество строк.

  • bytes_on_disk (UInt64) – Общий размер всех файлов части данных в байтах.

  • data_compressed_bytes (UInt64) – Общий размер сжатых данных в части данных. Все вспомогательные файлы (например, файлы с метками) не включаются.

  • data_uncompressed_bytes (UInt64) – Общий размер несжато данных в части данных. Все вспомогательные файлы (например, файлы с метками) не включаются.

  • primary_key_size (UInt64) – Объем памяти (в байтах), используемый значениями первичного ключа в файле primary.idx/cidx на диске.

  • marks_bytes (UInt64) – Размер файла с метками.

  • secondary_indices_compressed_bytes (UInt64) – Общий размер сжатых данных для вторичных индексов в части данных. Все вспомогательные файлы (например, файлы с метками) не включаются.

  • secondary_indices_uncompressed_bytes (UInt64) – Общий размер несжатых данных для вторичных индексов в части данных. Все вспомогательные файлы (например, файлы с метками) не включаются.

  • secondary_indices_marks_bytes (UInt64) – Размер файла с метками для вторичных индексов.

  • modification_time (DateTime) – Время, когда каталог с частью данных был изменен. Обычно это соответствует времени создания части данных.

  • remove_time (DateTime) – Время, когда часть данных стала неактивной.

  • refcount (UInt32) – Количество мест, где используется часть данных. Значение больше 2 указывает на то, что часть данных используется в запросах или слияниях.

  • min_date (Date) – Минимальное значение ключа даты в части данных.

  • max_date (Date) – Максимальное значение ключа даты в части данных.

  • min_time (DateTime) – Минимальное значение ключа даты и времени в части данных.

  • max_time (DateTime) – Максимальное значение ключа даты и времени в части данных.

  • partition_id (String) – ID раздела.

  • min_block_number (UInt64) – Минимальный номер блока данных, который составляет текущую часть после слияния.

  • max_block_number (UInt64) – Максимальный номер блока данных, который составляет текущую часть после слияния.

  • level (UInt32) – Глубина дерева слияния. Ноль означает, что текущая часть была создана путем вставки, а не слияния других частей.

  • data_version (UInt64) – Номер, используемый для определения, какие мутации следует применять к части данных (мутации с версией, превышающей data_version).

  • primary_key_bytes_in_memory (UInt64) – Объем памяти (в байтах), используемый значениями первичного ключа.

  • primary_key_bytes_in_memory_allocated (UInt64) – Объем памяти (в байтах), зарезервированной для значений первичного ключа.

  • is_frozen (UInt8) – Флаг, указывающий на наличие резервной копии данных раздела. 1, резервная копия существует. 0, резервная копия не существует. Для получения дополнительной информации смотрите FREEZE PARTITION

  • database (String) – Название базы данных.

  • table (String) – Название таблицы.

  • engine (String) – Название движка таблицы без параметров.

  • path (String) – Абсолютный путь к папке с файлами части данных.

  • disk_name (String) – Название диска, на котором хранится часть данных.

  • hash_of_all_files (String) – sipHash128 сжатых файлов.

  • hash_of_uncompressed_files (String) – sipHash128 несжатых файлов (файлы с метками, индексный файл и т. д.).

  • uncompressed_hash_of_compressed_files (String) – sipHash128 данных в сжатых файлах, как если бы они были несжатыми.

  • delete_ttl_info_min (DateTime) — Минимальное значение ключа даты и времени для TTL DELETE rule.

  • delete_ttl_info_max (DateTime) — Максимальное значение ключа даты и времени для TTL DELETE rule.

  • move_ttl_info.expression (Array(String)) — Массив выражений. Каждое выражение определяет TTL MOVE rule.

примечание

Массив move_ttl_info.expression в основном сохраняется для обратной совместимости, сейчас самым простым способом проверить правило TTL MOVE является использование полей move_ttl_info.min и move_ttl_info.max.

  • move_ttl_info.min (Array(DateTime)) — Массив значений даты и времени. Каждый элемент описывает минимальное ключевое значение для TTL MOVE rule.

  • move_ttl_info.max (Array(DateTime)) — Массив значений даты и времени. Каждый элемент описывает максимальное ключевое значение для TTL MOVE rule.

  • bytes (UInt64) – Псевдоним для bytes_on_disk.

  • marks_size (UInt64) – Псевдоним для marks_bytes.

Пример

См. также