system.parts_columns
包含关于MergeTree表的部分和列的信息.
每一行描述一个数据部分.
列信息:
-
partition(String) — 分区的名称. 要了解什么是分区, 请参阅ALTER查询的描述.格式:
YYYYMM按月自动分区.any_string当手动分区.
-
name(String) — 数据部分的名称. -
part_type(String) — 数据部分存储格式.可能的值:
Wide— 每一列存储在文件系统中的一个单独的文件中.Compact— 所有列都存储在文件系统中的一个文件中.
数据存储格式由MergeTree表的
min_bytes_for_wide_part和min_rows_for_wide_part设置控制. -
active(UInt8) — 数据部分是否处于活动状态的标志. 如果数据部分是活动的, 则在表中使用它. 否则, 它被删除. 合并后仍保留非活动数据部分. -
marks(UInt64) — 标记数. 要获得数据部分中的大约行数, 请将“标记”乘以索引粒度(通常为8192)(此提示不适用于自适应粒度). -
rows(UInt64) — 行数. -
bytes_on_disk(UInt64) — 所有数据部分文件的总大小(以字节为单位). -
data_compressed_bytes(UInt64) — 在数据部分中压缩数据的总大小. 不包括所有辅助文件(例如,带有标记的文件). -
data_uncompressed_bytes(UInt64) — 数据部分中未压缩数据的总大小. 不包括所有辅助文件(例如,带有标记的文件). -
marks_bytes(UInt64) — 带标记的文件的大小. -
modification_time(DateTime) — 包含数据部分的目录被修改的时间. 这通常对应于数据部分创建的时间. -
remove_time(DateTime) — 数据部分变为非活动状态的时间. -
refcount(UInt32) — 使用数据部分的位置数. 大于2的值表示该数据部分用于查询或合并. -
min_date(Date) — 数据部分中日期键的最小值. -
max_date(Date) — 数据部分中日期键的最大值. -
partition_id(String) — 分区ID. -
min_block_number(UInt64) — 合并后组成当前部分的数据部分最小值. -
max_block_number(UInt64) — 合并后组成当前部分的数据部分最大值. -
level(UInt32) — 合并树的深度. 0表示当前部分是通过插入而不是合并其他部分创建的. -
data_version(UInt64) — 用于确定应该对数据部分应用哪些突变的编号(版本高于data_version的突变). -
primary_key_bytes_in_memory(UInt64) — 主键值使用的内存量(以字节为单位). -
primary_key_bytes_in_memory_allocated(UInt64) — 为主键值保留的内存量(以字节为单位). -
database(String) — 数据库名称. -
table(String) — 表名称. -
engine(String) — 不带参数的表引擎的名称. -
disk_name(String) — 存储数据部分的磁盘名称. -
path(String) — 数据部件文件文件夹的绝对路径. -
column(String) — 列名称. -
type(String) — 列类型. -
column_position(UInt64) — 表中以1开头的一列的序号位置. -
default_kind(String) — 默认值的表达式类型 (DEFAULT,MATERIALIZED,ALIAS), 如果未定义则为空字符串. -
default_expression(String) — 表达式的默认值, 如果未定义则为空字符串. -
column_bytes_on_disk(UInt64) — 列的总大小(以字节为单位). -
column_data_compressed_bytes(UInt64) — 列中压缩数据的总大小,以字节为单位. -
column_data_uncompressed_bytes(UInt64) — 列中解压缩数据的总大小,以字节为单位. -
column_marks_bytes(UInt64) — 带标记的列的大小,以字节为单位. -
bytes(UInt64) —bytes_on_disk别名. -
marks_size(UInt64) —marks_bytes别名.
示例
另请参阅