PG_PARTITION
PG_PARTITION系统表存储数据库内所有分区表(partitioned table)、分区(table partition)、分区上toast表和分区索引(index partition)四类对象的信息。分区表索引(partitioned index)的信息不在PG_PARTITION系统表中保存。
表 1 PG_PARTITION字段
名称
|
类型
|
描述
|
oid
|
oid
|
行标识符(隐藏属性,必须明确选择)。
|
relname
|
name
|
分区表、分区、分区上toast表和分区索引的名称。
|
parttype
|
“char”
|
对象类型: - ‘r’:partitioned table
- ‘p’:table partition
- ‘x’:index partition
- ‘t’:toast table
|
parentid
|
oid
|
当对象为分区表或分区时,此字段表示分区表在PG_CLASS中的OID。
当对象为index partition时,此字段表示所属分区表索引(partitioned index)的OID。
|
rangenum
|
integer
|
保留字段。
|
intervalnum
|
integer
|
保留字段。
|
partstrategy
|
“char”
|
分区表分区策略,现在仅支持: - ‘r’:范围分区。
- ‘v’:数值分区。
- ‘i’:间隔分区。
- ‘l’:list分区。
- ‘h’:hash分区。
- ‘n’:无效分区。
|
relfilenode
|
oid
|
table partition、index partition、分区上toast表的物理存储位置。
|
reltablespace
|
oid
|
table partition、index partition、分区上toast表所属表空间的OID。
|
relpages
|
double precision
|
统计信息:table partition、index partition的数据页数量。
|
reltuples
|
double precision
|
统计信息:table partition、index partition的元组数。
|
relallvisible
|
integer
|
统计信息:table partition、index partition的可见数据页数。
|
reltoastrelid
|
oid
|
table partition所对应toast表的OID。
|
reltoastidxid
|
oid
|
table partition所对应toast表的索引的OID。
|
indextblid
|
oid
|
index partition对应table partition的OID。
|
indisusable
|
Boolean
|
分区索引是否可用。
|
reldeltarelid
|
oid
|
Delta表的OID。
|
reldeltaidx
|
oid
|
Delta表的索引表的OID。
|
relcudescrelid
|
oid
|
CU描述表的OID。
|
relcudescidx
|
oid
|
CU描述表的索引表的OID。
|
relfrozenxid
|
xid32
|
冻结事务ID号。
为保持前向兼容,保留此字段,新增relfrozenxid64用于记录此信息。
|
intspnum
|
integer
|
间隔分区所属表空间的个数。
|
partkey
|
int2vector
|
分区键的列号。
|
intervaltablespace
|
oidvector
|
间隔分区所属的表空间,间隔分区以round-robin方式落在这些表空间内。
|
interval
|
text[]
|
间隔分区的间隔值。
|
boundaries
|
text[]
|
范围分区和间隔分区的上边界。
|
transit
|
text[]
|
间隔分区的跳转点。
|
reloptions
|
text[]
|
设置partition的存储属性,与pg_class.reloptions的形态一样,用“keyword=value”格式的字符串来表示,目前用于在线扩容的信息搜集。
|
relfrozenxid64
|
xid
|
冻结事务ID号。
|