跳转到主内容
跳转到主内容

system.dropped_tables_parts

说明

包含从 system.dropped_tables 中记录的 MergeTree 表的数据片段 (parts) 信息。

此表的结构与 system.parts 相同。

  • partition (String) — 分区标识符 (由表分区键表达式派生出的字符串表示) 。
  • name (String) — 数据分区片段的名称。通过分区片段的命名结构,可以判断数据、摄取和合并模式等多个方面的信息。分区片段的命名格式如下:
<partition_id>_<minimum_block_number>_<maximum_block_number>_<level>_<data_version>
  • 定义:

    • partition_id - 标识分区键
    • minimum_block_number - 标识 part 中的最小块编号。ClickHouse 始终合并连续的块
    • maximum_block_number - 标识 part 中的最大块编号
    • level - part 每额外合并一次,该值就加一。级别为 0 表示这是一个尚未合并的新 part。需要注意的是,ClickHouse 中的所有 part 始终都是不可变的
    • data_version - 可选值,在 part 发生变更时递增 (同样,变更后的数据也始终只会写入新的 part,因为 part 是不可变的)
  • uuid (UUID) — 数据分区片段的 UUID。

  • part_type (String) — 数据分区片段的存储格式。可选值:Wide — 每一列存储在单独的文件中,Compact — 所有列存储在一个文件中。数据存储格式由 MergeTree 表的 min_bytes_for_wide_partmin_rows_for_wide_part 设置控制。

  • active (UInt8) — 用于指示数据分区片段是否处于活动状态的标志。如果某个数据分区片段处于活动状态,则表示它正在表中使用;否则,它即将被删除。非活动的数据分区片段会在合并和变更操作后出现。

  • marks (UInt64) — marks 的数量。要获取数据分区片段中的近似行数,可将 marks 乘以索引粒度 (通常为 8192) (此方法不适用于自适应粒度) 。

  • rows (UInt64) — 行数。

  • files (UInt64) — 数据分区片段中的文件数。

  • bytes_on_disk (UInt64) — 所有数据分区片段文件的总大小,以字节为单位。

  • data_compressed_bytes (UInt64) — 数据分区片段中压缩数据的总大小。不包括所有辅助文件 (例如标记文件) 。

  • data_uncompressed_bytes (UInt64) — 数据分区片段中未压缩数据的总大小。不包括所有辅助文件 (例如标记文件) 。

  • primary_key_size (UInt64) — 磁盘上 primary.idx/cidx 文件中的主键值占用的内存大小 (以字节为单位) 。

  • marks_bytes (UInt64) — mark 文件的大小。

  • secondary_indices_compressed_bytes (UInt64) — 数据分区片段中次级索引压缩数据的总大小。不包括所有辅助文件 (例如标记文件) 。

  • secondary_indices_uncompressed_bytes (UInt64) — 数据分区片段中次级索引未压缩数据的总大小。所有辅助文件 (例如,带有标记的文件) 均不计入在内。

  • secondary_indices_marks_bytes (UInt64) — 二级索引标记文件的大小。

  • modification_time (DateTime) — 包含数据分区片段的目录的修改时间。通常对应于数据分区片段的创建时间。

  • remove_time (DateTime) — 数据分区片段变为非活跃状态的时间。

  • refcount (UInt32) — 数据分区片段的使用位置数量。值大于 2 表示该数据分区片段用于查询或合并操作。

  • min_date (日期) — 数据分区片段中日期键的最小值。

  • max_date (Date) — 数据分区片段中的日期键最大值。

  • min_time (DateTime) — 数据分区片段中日期时间键的最小值。

  • max_time (DateTime) — 数据分区片段中日期时间键的最大值。

  • partition_id (String) — 分区 ID。

  • min_block_number (Int64) — 合并后组成当前 part 的各数据分区片段中的最小编号。

  • max_block_number (Int64) — 合并后构成当前 part 的各数据分区片段中的最大编号。

  • level (UInt32) — MergeTree 的层级深度。0 表示当前 part 是通过 insert 创建的,而不是通过合并其他 part 生成的。

  • data_version (UInt64) — 用于确定哪些 mutation 应该应用到数据分区片段的编号 (即版本高于 data_version 的 mutations) 。

  • primary_key_bytes_in_memory (UInt64) — 主键值占用的内存量 (以字节为单位) 。当启用 primary_key_lazy_load 且主键尚未加载时,其值为 0。

  • primary_key_bytes_in_memory_allocated (UInt64) — 为主键值预留的内存大小 (以字节为单位) 。启用 primary_key_lazy_load 且主键尚未加载时,该值为 0。

  • index_granularity_bytes_in_memory (UInt64) — 索引粒度值占用的内存量 (以字节为单位) (当 primary&#95;key&#95;lazy&#95;load=1use&#95;primary&#95;key&#95;cache=1 时,该值为 0) 。

  • index_granularity_bytes_in_memory_allocated (UInt64) — 为索引粒度值预留的内存大小 (以字节为单位) (当 primary_key_lazy_load=1 且 use_primary_key_cache=1 时,该值为 0) 。

  • is_frozen (UInt8) — 用于指示分区数据备份是否存在的标志。1 表示备份存在。0 表示备份不存在。更多详细信息,请参见 FREEZE PARTITION。

  • database (String) — 数据库的名称。

  • table (String) — 表的名称。

  • engine (String) — 不含参数的表引擎名称。

  • disk_name (String) — 存储该数据分区片段的磁盘名称。

  • path (String) — 包含数据分区片段文件的文件夹的绝对路径。

  • hash_of_all_files (String) — 压缩文件的 sipHash128 哈希值。

  • hash_of_uncompressed_files (String) — 未压缩文件 (如标记文件、索引文件等) 的 sipHash128 哈希值。

  • uncompressed_hash_of_compressed_files (String) — 将压缩文件中的数据视为未压缩时计算得到的 sipHash128。

  • delete_ttl_info_min (DateTime) — TTL DELETE 规则对应的日期和时间键最小值。

  • delete_ttl_info_max (DateTime) — 生存时间 (TTL) DELETE 规则中日期和时间键的最大值。

  • move_ttl_info.expression (Array(String)) — 表达式数组。每个表达式定义一条 TTL MOVE 规则。

  • move_ttl_info.min (Array(DateTime)) — 日期和时间值组成的数组。每个元素表示一条生存时间 (TTL) MOVE 规则的最小键值。

  • move_ttl_info.max (Array(DateTime)) — 日期和时间值数组。每个元素表示 TTL MOVE 规则的最大键值。

  • default_compression_codec (String) — 用于压缩该数据分区片段的编解码器名称 (如果列未显式指定编解码器) 。

  • recompression_ttl_info.expression (Array(String)) — 生存时间 (TTL) 表达式。

  • recompression_ttl_info.min (Array(DateTime)) — 该 part 中计算出的生存时间 (TTL) 表达式的最小值。用于判断是否至少存在一行的生存时间 (TTL) 已过期。

  • recompression_ttl_info.max (Array(DateTime)) — 该 part 内计算出的 TTL 表达式的最大值。用于判断其中是否所有行的生存时间 (TTL) 均已过期。

  • group_by_ttl_info.expression (Array(String)) — 生存时间 (TTL) 表达式。

  • group_by_ttl_info.min (Array(DateTime)) — 该 part 中计算得到的 TTL 表达式的最小值。用于判断是否至少有一行的生存时间 (TTL) 已过期。

  • group_by_ttl_info.max (Array(DateTime)) — 此数据片段中计算得到的生存时间 (TTL) 表达式的最大值。用于判断是否所有行的生存时间 (TTL) 都已过期。

  • rows_where_ttl_info.expression (Array(String)) — TTL 表达式。

  • rows_where_ttl_info.min (Array(DateTime)) — 此 part 内计算出的 TTL 表达式的最小值。用于判断是否至少存在一行 TTL 已过期的数据。

  • rows_where_ttl_info.max (Array(DateTime)) — 此 part 中计算出的生存时间 (TTL) 表达式的最大值。用于判断是否所有行的生存时间 (TTL) 都已过期。

  • projections (Array(String)) — 为该 part 计算得到的投影名称列表。

  • visible (UInt8) — 用于指示此 part 是否对 SELECT 查询可见的标志。

  • creation_tid (Tuple(UInt64, UInt64, UUID)) — 已创建或正尝试创建此对象的事务 ID。

  • removal_tid_lock (UInt64) — removal_tid 的哈希值,用于在移除对象时对其加锁。

  • removal_tid (Tuple(UInt64, UInt64, UUID)) — 已删除或正尝试删除该对象的事务 ID

  • creation_csn (UInt64) — 创建此对象的事务的 CSN

  • removal_csn (UInt64) — 删除此对象的事务的 CSN

  • has_lightweight_delete (UInt8) — 指示 part 是否带有轻量级删除掩码的标志。

  • last_removal_attempt_time (DateTime) — 服务器最近一次尝试删除此часть的时间。

  • removal_state (String) — part 移除过程的当前状态。

別名:

  • bytesbytes_on_disk 的别名。
  • marks_sizemarks_bytes 的别名。
  • part_namename 的别名。

另请参阅