Interroger dans ClickHouse CloudLes données de cette table système sont stockées localement sur chaque nœud de ClickHouse Cloud. Pour obtenir une vue complète de l’ensemble des données, il faut donc utiliser la fonction
clusterAllReplicas. Consultez cette page pour plus de détails.Description
system.iceberg_metadata_log enregistre les événements d’accès aux métadonnées et d’analyse pour les tables Iceberg lues par ClickHouse. Elle fournit des informations détaillées sur chaque fichier de métadonnées ou entrée traités, ce qui est utile pour le débogage, l’audit et la compréhension de l’évolution de la structure des tables Iceberg.
Cette table consigne chaque fichier de métadonnées et chaque entrée lus à partir de tables Iceberg, y compris les fichiers de métadonnées racine, les listes de manifestes et les entrées de manifeste. Elle aide les utilisateurs à suivre la façon dont ClickHouse interprète les métadonnées des tables Iceberg et à diagnostiquer les problèmes liés à l’évolution du schéma, à la localisation des fichiers ou à la planification des requêtes.
Cette table est principalement destinée au débogage.
Contrôler la verbosité des logs
iceberg_metadata_log_level.
Pour journaliser toutes les métadonnées utilisées dans la requête en cours :
iceberg_metadata_log_level pour plus d’informations.
Bon à savoir
- Utilisez
iceberg_metadata_log_levelau niveau de la requête uniquement lorsque vous avez besoin d’examiner votre table Iceberg en détail. Sinon, vous risquez de remplir la table de logs avec un volume excessif de métadonnées et de dégrader les performances. - La table contient des entrées en double, car elle est principalement destinée au débogage et ne garantit pas l’unicité par entité. Des lignes distinctes stockent le contenu et l’état d’élagage, car ils sont collectés à des moments différents au cours de l’exécution du programme. Le contenu est collecté lors de la lecture des métadonnées, tandis que l’état d’élagage est collecté lorsque les métadonnées sont vérifiées en vue de l’élagage. Ne vous appuyez jamais sur la table elle-même pour la déduplication.
- Si vous utilisez un
content_typeplus détaillé queManifestListMetadata, le cache de métadonnées Iceberg est désactivé pour les listes de manifestes. - De même, si vous utilisez un
content_typeplus détaillé queManifestFileMetadata, le cache de métadonnées Iceberg est désactivé pour les fichiers manifestes. - Si la requête SELECT a été annulée ou a échoué, la table de logs peut tout de même contenir des entrées sur les métadonnées traitées avant l’échec, mais elle ne contiendra pas d’informations sur les entités de métadonnées qui n’ont pas été traitées.
Colonnes
hostname(LowCardinality(String)) — Nom d’hôte du serveur qui exécute la requête.event_date(Date) — Date de l’entrée.event_time(DateTime) — Heure de l’événement.query_id(String) — Identifiant de la requête.content_type(Enum8(‘None’ = 0, ‘Metadata’ = 1, ‘ManifestListMetadata’ = 2, ‘ManifestListEntry’ = 3, ‘ManifestFileMetadata’ = 4, ‘ManifestFileEntry’ = 5)) — Type de contenu.table_path(String) — Chemin de la table.file_path(String) — Chemin du fichier.content(String) — Contenu au format JSON (contenu du fichier JSON, métadonnées Avro ou entrée Avro).row_in_file(Nullable(UInt64)) — Ligne dans le fichier.pruning_status(Nullable(Enum8(‘NotPruned’ = 0, ‘PartitionPruned’ = 1, ‘MinMaxIndexPruned’ = 2))) — Statut de l’élagage des partitions ou de l’index min-max pour le fichier.
Valeurs de content_type
None: Aucun contenu.Metadata: Fichier de métadonnées racine.ManifestListMetadata: Métadonnées de la liste de manifestes.ManifestListEntry: Entrée d’une liste de manifestes.ManifestFileMetadata: Métadonnées du fichier manifeste.ManifestFileEntry: Entrée d’un fichier manifeste.