Passer au contenu principal
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

La table 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

Vous pouvez contrôler quels événements de métadonnées sont journalisés à l’aide du paramètre iceberg_metadata_log_level. Pour journaliser toutes les métadonnées utilisées dans la requête en cours :
SELECT * FROM my_iceberg_table SETTINGS iceberg_metadata_log_level = 'manifest_file_entry';

SYSTEM FLUSH LOGS iceberg_metadata_log;

SELECT content_type, file_path, row_in_file
FROM system.iceberg_metadata_log
WHERE query_id = '{previous_query_id}';
Pour journaliser uniquement le fichier JSON de métadonnées racine utilisé pour la requête en cours :
SELECT * FROM my_iceberg_table SETTINGS iceberg_metadata_log_level = 'metadata';

SYSTEM FLUSH LOGS iceberg_metadata_log;

SELECT content_type, file_path, row_in_file
FROM system.iceberg_metadata_log
WHERE query_id = '{previous_query_id}';
Consultez la description du paramètre iceberg_metadata_log_level pour plus d’informations.

Bon à savoir

  • Utilisez iceberg_metadata_log_level au 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_type plus détaillé que ManifestListMetadata, le cache de métadonnées Iceberg est désactivé pour les listes de manifestes.
  • De même, si vous utilisez un content_type plus détaillé que ManifestFileMetadata, 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

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.

Voir aussi

Dernière modification le 29 juin 2026