system.iceberg_metadata_log
Таблица system.iceberg_metadata_log
регистрирует события доступа и анализа метаданных для таблиц Iceberg, читаемых ClickHouse. Она предоставляет подробную информацию о каждом метафайле или записи, обработанных системой, что полезно для отладки, аудита и понимания эволюции структуры таблиц Iceberg.
Цель
Эта таблица записывает каждый метафайл и запись, прочитанные из таблиц Iceberg, включая корневые метафайлы, списки манифестов и записи манифестов. Она помогает пользователям отслеживать, как ClickHouse интерпретирует метаданные таблиц Iceberg, и диагностировать проблемы, связанные с эволюцией схемы, разрешением файлов или планированием запросов.
Эта таблица в основном предназначена для целей отладки.
Колонки
Имя | Тип | Описание |
---|---|---|
event_date | Date | Дата записи в журнале. |
event_time | DateTime | Время события. |
query_id | String | Идентификатор запроса, вызвавшего чтение метаданных. |
content_type | Enum8 | Тип содержимого метаданных (см. ниже). |
table_path | String | Путь к таблице Iceberg. |
file_path | String | Путь к корневому метафайлу JSON, списку манифестов или файлу манифеста. |
content | String | Содержимое в формате JSON (сырые метаданные из .json, метаданные Avro или запись Avro). |
row_in_file | Nullable(UInt64) | Номер строки в файле, если применимо. Присутствует для типов содержимого ManifestListEntry и ManifestFileEntry . |
Значения content_type
None
: Нет содержимого.Metadata
: Корневой метафайл.ManifestListMetadata
: Метаданные списка манифестов.ManifestListEntry
: Запись в списке манифестов.ManifestFileMetadata
: Метаданные файла манифеста.ManifestFileEntry
: Запись в файле манифеста.
Данные в этой системной таблице хранятся локально на каждом узле в ClickHouse Cloud. Для получения полного представления о всех данных требуется функция clusterAllReplicas
. Смотрите здесь для получения дополнительной информации.
Управление подробностью журнала
Вы можете контролировать, какие события метаданных регистрируются, используя настройку iceberg_metadata_log_level
.
Чтобы зарегистрировать все метаданные, используемые в текущем запросе:
Чтобы зарегистрировать только корневой метафайл JSON, используемый в текущем запросе:
Дополнительную информацию смотрите в описании настройки iceberg_metadata_log_level
.
Полезно знать
- Используйте
iceberg_metadata_log_level
на уровне запроса только тогда, когда вам нужно подробно исследовать вашу таблицу Iceberg. В противном случае вы можете заполнить таблицу журнала избыточными метаданными и столкнуться с ухудшением производительности. - Таблица может содержать дублирующиеся записи, так как в первую очередь она предназначена для отладки и не гарантирует уникальность для каждого объекта.
- Если вы используете
content_type
, более подробный чемManifestListMetadata
, кеш метаданных Iceberg отключается для списков манифестов. - Аналогично, если вы используете
content_type
, более подробный чемManifestFileMetadata
, кеш метаданных Iceberg отключается для файлов манифеста.