Description
La table system.part_log n’est créée que si le paramètre de serveur part_log est défini.
Cette table contient des informations sur les événements affectant les parties de données dans les tables de la famille MergeTree, comme l’ajout ou la fusion de données.
La table system.part_log contient les colonnes suivantes :
Colonnes
hostname(LowCardinality(String)) — Nom d’hôte du serveur exécutant la requête.query_id(String) — Identifiant de la requête INSERT qui a créé cette partie de données.event_type(Enum8('NewPart' = 1, 'MergeParts' = 2, 'DownloadPart' = 3, 'RemovePart' = 4, 'MutatePart' = 5, 'MovePart' = 6, 'MergePartsStart' = 7, 'MutatePartStart' = 8)) — Type de l’événement survenu sur la partie de données. Peut avoir l’une des valeurs suivantes : NewPart — Insertion d’une nouvelle partie de données, MergePartsStart — La fusion des parties de données a commencé, MergeParts — La fusion des parties de données est terminée, DownloadPart — Téléchargement d’une partie de données, RemovePart — Suppression ou détachement d’une partie de données à l’aide de DETACH PARTITION.MutatePartStart — La mutation d’une partie de données a commencé, MutatePart — La mutation d’une partie de données est terminée, MovePart — Déplacement de la partie de données d’un disque à un autre.merge_reason(Enum8('NotAMerge' = 1, 'RegularMerge' = 2, 'TTLDeleteMerge' = 3, 'TTLRecompressMerge' = 4, 'TTLDropMerge' = 5)) — Raison de l’événement de type MERGE_PARTS. Peut avoir l’une des valeurs suivantes : NotAMerge — L’événement actuel est d’un type autre que MERGE_PARTS, RegularMerge — Fusion standard, TTLDeleteMerge, TTLDropMerge — Nettoyage des données expirées. TTLRecompressMerge — Recompression de la partie de données avec TTL.merge_algorithm(Enum8('Undecided' = 0, 'Vertical' = 1, 'Horizontal' = 2)) — Algorithme de fusion pour l’événement de type MERGE_PARTS. Peut avoir l’une des valeurs suivantes : Undecided, Horizontal, Verticalevent_date(Date) — Date de l’événement.event_time(DateTime) — Heure de l’événement.event_time_microseconds(DateTime64(6)) — Heure de l’événement avec une précision à la microseconde.duration_ms(UInt64) — Durée de cette opération.database(String) — Nom de la base de données dans laquelle se trouve la partie de données.table(String) — Nom de la table dans laquelle se trouve la partie de données.table_uuid(UUID) — UUID de la table à laquelle appartient la partie de données.part_name(String) — Nom de la partie de données.partition_id(String) — ID de la partition dans laquelle la partie de données a été insérée. La colonne prend la valeurallsi le partitionnement se fait partuple().partition(String) — Nom de la partition.part_type(String) — Type de la partie. Valeurs possibles : Wide et Compact.part_storage_type(String) — Type deDataPartStorage. Valeurs possibles :Packed- la plupart des fichiers de la partie sont stockés dans une seule archive (les projections et quelques fichiers de service tels quetxn_version.txtsont écrits séparément),Full- chaque fichier est stocké séparément.disk_name(String) — Nom du disque sur lequel se trouve la partie de données.path_on_disk(String) — Chemin absolu vers le dossier contenant les fichiers de la partie de données.rows(UInt64) — Nombre de lignes dans la partie de données.size_in_bytes(UInt64) — Taille de la partie de données sur le disque, en octets.merged_from(Array(String)) — Tableau des noms des parties source dont est issue la partie actuelle.bytes_uncompressed(UInt64) — Taille non compressée de la part résultante, en octets.read_rows(UInt64) — Nombre de lignes lues pendant la fusion.read_bytes(UInt64) — Nombre d’octets lus pendant la fusion.peak_memory_usage(UInt64) — Quantité maximale de RAM utilisée pendant la fusion.deduplication_block_ids(Array(String)) — Tableau des ID de blocs utilisés pour la déduplication lors de l’insertion de cette part.error(UInt16) — Code d’erreur de l’exception survenue.exception(String) — Message texte de l’erreur survenue.mutation_ids(Array(String)) — Tableau des ID de mutation appliqués à la part source (merged_from) pour les événements de type MUTATE_PART_START et MUTATE_PART.ProfileEvents(Map(LowCardinality(String), UInt64)) — Tous les profile events capturés pendant cette opération.projections_duration_ms(Map(LowCardinality(String), UInt64)) — Durée de fusion/reconstruction par projection, en millisecondes.
Alias :
ProfileEvents.Names— alias demapKeys(ProfileEvents).ProfileEvents.Values— alias demapValues(ProfileEvents).name— alias depart_name.
La table system.part_log est créée lors de la première insertion de données dans la table MergeTree.
Exemple
SELECT * FROM system.part_log LIMIT 1 FORMAT Vertical;Row 1:
──────
hostname: clickhouse.eu-central1.internal
query_id:
event_type: MergeParts
merge_reason: RegularMerge
merge_algorithm: Vertical
event_date: 2025-07-19
event_time: 2025-07-19 23:54:19
event_time_microseconds: 2025-07-19 23:54:19.710761
duration_ms: 2158
database: default
table: github_events
table_uuid: 1ad33424-f5f5-402b-ac03-ec82282634ab
part_name: all_1_7_1
partition_id: all
partition: tuple()
part_type: Wide
part_storage_type: Full
disk_name: default
path_on_disk: ./data/store/1ad/1ad33424-f5f5-402b-ac03-ec82282634ab/all_1_7_1/
rows: 3285726 -- 3.29 million
size_in_bytes: 438968542 -- 438.97 million
merged_from: ['all_1_1_0','all_2_2_0','all_3_3_0','all_4_4_0','all_5_5_0','all_6_6_0','all_7_7_0']
bytes_uncompressed: 1373137767 -- 1.37 billion
read_rows: 3285726 -- 3.29 million
read_bytes: 1429206946 -- 1.43 billion
peak_memory_usage: 303611887 -- 303.61 million
error: 0
exception:
mutation_ids:
ProfileEvents: {'FileOpen':703,'ReadBufferFromFileDescriptorRead':3824,'ReadBufferFromFileDescriptorReadBytes':439601681,'WriteBufferFromFileDescriptorWrite':592,'WriteBufferFromFileDescriptorWriteBytes':438988500,'ReadCompressedBytes':439601681,'CompressedReadBufferBlocks':6314,'CompressedReadBufferBytes':1539835748,'OpenedFileCacheHits':50,'OpenedFileCacheMisses':484,'OpenedFileCacheMicroseconds':222,'IOBufferAllocs':1914,'IOBufferAllocBytes':319810140,'ArenaAllocChunks':8,'ArenaAllocBytes':131072,'MarkCacheMisses':7,'CreatedReadBufferOrdinary':534,'DiskReadElapsedMicroseconds':139058,'DiskWriteElapsedMicroseconds':51639,'AnalyzePatchRangesMicroseconds':28,'ExternalProcessingFilesTotal':1,'RowsReadByMainReader':170857759,'WaitMarksLoadMicroseconds':988,'LoadedMarksFiles':7,'LoadedMarksCount':14,'LoadedMarksMemoryBytes':728,'Merge':2,'MergeSourceParts':14,'MergedRows':3285733,'MergedColumns':4,'GatheredColumns':51,'MergedUncompressedBytes':1429207058,'MergeTotalMilliseconds':2158,'MergeExecuteMilliseconds':2155,'MergeHorizontalStageTotalMilliseconds':145,'MergeHorizontalStageExecuteMilliseconds':145,'MergeVerticalStageTotalMilliseconds':2008,'MergeVerticalStageExecuteMilliseconds':2006,'MergeProjectionStageTotalMilliseconds':5,'MergeProjectionStageExecuteMilliseconds':4,'MergingSortedMilliseconds':7,'GatheringColumnMilliseconds':56,'ContextLock':2091,'PartsLockHoldMicroseconds':77,'PartsLockWaitMicroseconds':1,'RealTimeMicroseconds':2157475,'CannotWriteToWriteBufferDiscard':36,'LogTrace':6,'LogDebug':59,'LoggerElapsedNanoseconds':514040,'ConcurrencyControlSlotsGranted':53,'ConcurrencyControlSlotsAcquired':53}