跳转到主要内容
在 ClickHouse Cloud 中查询此系统表中的数据分别保存在 ClickHouse Cloud 各节点的本地。因此,如需查看所有数据的完整情况,需要使用 clusterAllReplicas 函数。更多详情请参见此处

描述

仅当指定了 part_log 服务器设置时,才会创建 system.part_log 表。 此表包含 MergeTree 家族表中与 数据分区片段 相关的事件信息,例如添加数据或合并数据。 system.part_log 表包含以下列:

  • hostname (LowCardinality(String)) — 执行该查询的服务器主机名。
  • query_id (String) — 创建此数据分区片段的 INSERT 查询标识符。
  • event_type (Enum8(‘NewPart’ = 1, ‘MergeParts’ = 2, ‘DownloadPart’ = 3, ‘RemovePart’ = 4, ‘MutatePart’ = 5, ‘MovePart’ = 6, ‘MergePartsStart’ = 7, ‘MutatePartStart’ = 8)) — 发生在数据分区片段上的事件类型。可能具有以下值之一:NewPart — 插入新的数据分区片段,MergePartsStart — 数据分区片段的合并已开始,MergeParts — 数据分区片段的合并已完成,DownloadPart — 下载数据分区片段,RemovePart — 使用 DETACH PARTITION 删除或分离数据分区片段。MutatePartStart — 数据分区片段的变更已开始,MutatePart — 数据分区片段的变更已完成,MovePart — 将数据分区片段从一个磁盘移动到另一个磁盘。
  • merge_reason (Enum8(‘NotAMerge’ = 1, ‘RegularMerge’ = 2, ‘TTLDeleteMerge’ = 3, ‘TTLRecompressMerge’ = 4, ‘TTLDropMerge’ = 5)) — MERGE_PARTS 类型事件发生的原因。可能具有以下值之一:NotAMerge — 当前事件的类型不是 MERGE_PARTS;RegularMerge — 常规合并;TTLDeleteMerge、TTLDropMerge — 清理过期数据;TTLRecompressMerge — 重新压缩数据分区片段。
  • merge_algorithm (Enum8(‘Undecided’ = 0, ‘Vertical’ = 1, ‘Horizontal’ = 2)) — 类型为 MERGE_PARTS 的事件所使用的合并算法。可取以下值之一:Undecided、Horizontal、Vertical
  • event_date (Date) — 事件日期。
  • event_time (DateTime) — 事件发生时间。
  • event_time_microseconds (DateTime64(6)) — 精确到微秒的事件时间。
  • duration_ms (UInt64) — 此操作的耗时。
  • database (String) — 该数据分区片段所在数据库的名称。
  • table (String) — 数据分区片段所在表的名称。
  • table_uuid (UUID) — 该数据分区片段所属的表的 UUID。
  • part_name (String) — 数据分区片段名称。
  • partition_id (String) — 数据分区片段被插入到的分区 ID。若按 tuple() 进行分区,则该列的值为 all
  • partition (String) — 分区名称。
  • part_type (String) — 分片类型。可选值:Wide 和 Compact。
  • part_storage_type (String) — DataPartStorage 的类型。可能的值:Packed - 所有文件都存储在同一个 blob 中,Full - 每个文件对应一个 blob。
  • disk_name (String) — 数据分区片段所在磁盘的名称。
  • path_on_disk (String) — 存放数据分区片段文件的文件夹的绝对路径。
  • rows (UInt64) — 数据分区片段中的行数。
  • size_in_bytes (UInt64) — 数据分区片段在磁盘上占用的大小 (以字节为单位) 。
  • merged_from (Array(String)) — 包含组成当前 part 的源 parts 名称的数组。
  • bytes_uncompressed (UInt64) — 结果分片的未压缩大小 (字节) 。
  • read_rows (UInt64) — 合并过程中读取的行数。
  • read_bytes (UInt64) — 合并期间读取的字节数。
  • peak_memory_usage (UInt64) — 合并期间的最大 RAM 使用量
  • deduplication_block_ids (Array(String)) — 在插入此分片时用于去重的块 ID 数组。
  • error (UInt16) — 已发生的异常的错误代码。
  • exception (String) — 已发生错误的文本消息。
  • mutation_ids (Array(String)) — 对于类型为 MUTATE_PART_START 和 MUTATE_PART 的事件,这是应用到源分片 (merged_from) 上的变更 ID 数组。
  • ProfileEvents (Map(LowCardinality(String), UInt64)) — 此操作期间记录的所有 profile events。
  • projections_duration_ms (Map(LowCardinality(String), UInt64)) — 各投影合并/重建的耗时 (毫秒) 。
别名:
  • ProfileEvents.NamesmapKeys(ProfileEvents) 的别名。
  • ProfileEvents.ValuesmapValues(ProfileEvents) 的别名。
  • namepart_name 的别名。
system.part_log 表会在首次向 MergeTree 表中插入数据后创建。

示例

最后修改于 2026年7月2日