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

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.

Пример

См. также