system.part_log
Выполнение запросов в ClickHouse Cloud
Данные в этой системной таблице хранятся локально на каждом узле в ClickHouse Cloud. Поэтому для получения полного обзора всех данных требуется функция clusterAllReplicas. Подробности см. здесь.
Таблица system.part_log создаётся только в том случае, если задан параметр сервера part_log.
Эта таблица содержит информацию о событиях, произошедших с частями данных в таблицах семейства MergeTree, таких как добавление или слияние данных.
Таблица system.part_log содержит следующие столбцы:
hostname(LowCardinality(String)) — имя хоста сервера, выполняющего запрос.query_id(String) — идентификатор запросаINSERT, создавшего эту часть данных.event_type(Enum8) — тип события, произошедшего с частью данных. Может принимать одно из следующих значений:NewPart— Вставка новой части данных.MergePartsStart— Начало слияния частей данных.MergeParts— Завершение слияния частей данных.DownloadPart— Загрузка части данных.RemovePart— Удаление или отсоединение части данных с помощью DETACH PARTITION.MutatePartStart— Начало мутации части данных.MutatePart— Завершение мутации части данных.MovePart— Перемещение части данных с одного диска на другой.
merge_reason(Enum8) — Причина возникновения события типаMERGE_PARTS. Может иметь одно из следующих значений:NotAMerge— Текущее событие имеет тип, отличный отMERGE_PARTS.RegularMerge— Обычное слияние.TTLDeleteMerge— Удаление просроченных данных.TTLRecompressMerge— Повторное сжатие части данных с.
merge_algorithm(Enum8) — алгоритм слияния события типаMERGE_PARTS. Может принимать одно из следующих значений:Не выбраноГоризонтальнаяВертикальная
event_date(Date) — Дата события.event_time(DateTime) — время события.event_time_microseconds(DateTime64) — Время события с точностью до микросекунд.duration_ms(UInt64) — продолжительность.database(String) — Имя базы данных, в которой хранится часть данных.table(String) — Имя таблицы, в которой находится часть данных.table_uuid(UUID) — UUID таблицы, которой принадлежит часть данных.part_name(String) — Имя части данных.partition_id(String) — идентификатор раздела, в который была вставлена часть данных. Столбец принимает значениеall, если разбиение выполняется поtuple().partition(String) - Имя раздела.part_type(String) - Тип части. Возможные значения: Wide и Compact.disk_name(String) - Имя диска, на котором находится часть данных.path_on_disk(String) — Абсолютный путь к каталогу с файлами кусков данных.rows(UInt64) — Число строк в части данных.size_in_bytes(UInt64) — размер части данных в байтах.merged_from(Array(String)) — массив имен частей, из которых была сформирована текущая часть (после слияния).bytes_uncompressed(UInt64) — Объём несжатых данных (в байтах).read_rows(UInt64) — Количество строк, прочитанных при слиянии.read_bytes(UInt64) — количество байт, прочитанных во время слияния.peak_memory_usage(Int64) — максимальная разница между объёмом выделенной и освобождённой памяти в контексте этого потока.error(UInt16) — Код возникшей ошибки.exception(String) — Текст сообщения о возникшей ошибке.ProfileEvents(Map(String, UInt64)) — счётчики ProfileEvents, измеряющие различные метрики. Их описание приведено в таблице system.events.
Таблица system.part_log создаётся после первой вставки данных в таблицу MergeTree.
Пример