Descrição
A tabela system.part_log é criada somente se a configuração do servidor part_log estiver definida.
Esta tabela contém informações sobre eventos ocorridos com partes de dados em tabelas da família MergeTree, como adição ou mesclagem de dados.
A tabela system.part_log contém as seguintes colunas:
Colunas
hostname(LowCardinality(String)) — Nome do host do servidor que executa a consulta.query_id(String) — Identificador da consulta INSERT que criou esta parte de dados.event_type(Enum8('NewPart' = 1, 'MergeParts' = 2, 'DownloadPart' = 3, 'RemovePart' = 4, 'MutatePart' = 5, 'MovePart' = 6, 'MergePartsStart' = 7, 'MutatePartStart' = 8)) — Tipo do evento que ocorreu com a parte de dados. Pode ter um dos seguintes valores: NewPart — Inserção de uma nova parte de dados, MergePartsStart — A mesclagem das partes de dados foi iniciada, MergeParts — A mesclagem das partes de dados foi concluída, DownloadPart — Download de uma parte de dados, RemovePart — Remoção ou desanexação de uma parte de dados usando DETACH PARTITION.MutatePartStart — A mutação de uma parte de dados foi iniciada, MutatePart — A mutação de uma parte de dados foi concluída, MovePart — Movimentação da parte de dados de um disco para outro.merge_reason(Enum8('NotAMerge' = 1, 'RegularMerge' = 2, 'TTLDeleteMerge' = 3, 'TTLRecompressMerge' = 4, 'TTLDropMerge' = 5)) — O motivo do evento do tipo MERGE_PARTS. Pode ter um dos seguintes valores: NotAMerge — O evento atual tem um tipo diferente de MERGE_PARTS, RegularMerge — Um merge comum, TTLDeleteMerge, TTLDropMerge — Limpeza de dados expirados. TTLRecompressMerge — Recompressão da parte de dados com o.merge_algorithm(Enum8('Undecided' = 0, 'Vertical' = 1, 'Horizontal' = 2)) — Algoritmo de mesclagem para o evento do tipo MERGE_PARTS. Pode ter um dos seguintes valores: Undecided, Horizontal, Verticalevent_date(Date) — Data do evento.event_time(DateTime) — Data e hora do evento.event_time_microseconds(DateTime64(6)) — Horário do evento com precisão de microssegundos.duration_ms(UInt64) — Duração dessa operação.database(String) — Nome do banco de dados ao qual a parte de dados pertence.table(String) — Nome da tabela à qual a parte de dados pertence.table_uuid(UUID) — UUID da tabela à qual a parte de dados pertence.part_name(String) — Nome da parte de dados.partition_id(String) — ID da partição em que a parte de dados foi inserida. A coluna assume o valorallse o particionamento for portuple().partition(String) — O nome da partição.part_type(String) — O tipo da parte. Valores possíveis: Wide e Compact.part_storage_type(String) — O tipo deDataPartStorage. Valores possíveis:Packed- a maioria dos arquivos da parte é armazenada em um único arquivo compactado (projeções e alguns arquivos de serviço, comotxn_version.txt, são gravados separadamente),Full- cada arquivo é armazenado separadamente.disk_name(String) — O nome do disco em que a parte de dados se encontra.path_on_disk(String) — Caminho absoluto da pasta que contém os arquivos da parte de dados.rows(UInt64) — O número de linhas na parte de dados.size_in_bytes(UInt64) — Tamanho da parte de dados no disco, em bytes.merged_from(Array(String)) — Um array com os nomes das partes de origem a partir das quais a parte atual foi formada.bytes_uncompressed(UInt64) — Tamanho descompactado da parte resultante, em bytes.read_rows(UInt64) — Número de linhas lidas durante a mesclagem.read_bytes(UInt64) — O número de bytes lidos durante a mesclagem.peak_memory_usage(UInt64) — A quantidade máxima de RAM usada durante a operação de mergededuplication_block_ids(Array(String)) — Um array de IDs de bloco usado na desduplicação ao inserir esta parte.error(UInt16) — O código de erro da exceção gerada.exception(String) — Mensagem de texto do erro ocorrido.mutation_ids(Array(String)) — Um array de IDs de mutação aplicados à parte de origem (merged_from) para o evento do tipo MUTATE_PART_START e MUTATE_PART.ProfileEvents(Map(LowCardinality(String), UInt64)) — Todos os eventos de perfil coletados durante esta operação.projections_duration_ms(Map(LowCardinality(String), UInt64)) — Duração, em milissegundos, da mesclagem/reconstrução de cada projeção.
Aliases:
ProfileEvents.Names— é um alias demapKeys(ProfileEvents).ProfileEvents.Values— é um alias demapValues(ProfileEvents).name— é um alias depart_name.
A tabela system.part_log é criada após a primeira inserção de dados na tabela MergeTree.
Exemplo
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}