云数据库 GAUSSDB-段页式存储函数:gs_seg_get_extents(tablespace_name NAME, bucketnode INTEGER, head_block_id BIGINT)
云数据库 GAUSSDB-段页式存储函数:gs_seg_get_extents(tablespace_name NAME, bucketnode INTEGER, head_block_id BIGINT)
gs_seg_get_extents(tablespace_name NAME, bucketnode INTEGER, head_block_id BIGINT)
描述:输出该表空间下段头文件里段头页面的段对象的所有扩展,包含1号文件中的segment head、fork head、level1 page,2~5号文件中的data extent。只支持管理员权限用户查询。
参数说明:
名称 |
类型 |
描述 |
---|---|---|
tablespace_name |
NAME |
段对象所属的表空间。 |
bucketnode |
INTEGER |
|
head_block_id |
BIGINT |
段头页面号。 |
返回值说明:
名称 |
类型 |
描述 |
---|---|---|
extent_id |
INTEGER |
逻辑扩展号。 |
file_id |
INTEGER |
扩展所在的数据文件标识。取值范围:[1,5]的int4值。 |
forknum |
INTEGER |
段对象的分支。
取值范围:
|
block_id |
BIGINT |
扩展所在的数据文件中的起始页面号。 |
blocks |
INTEGER |
扩展大小。 取值范围:
|
usage_type |
TEXT |
Extent的使用类型。
取值范围:
|
例如(下列操作需要在表空间下创建过段页式普通表后再执行):
gaussdb=# SELECT * FROM gs_seg_get_extents('pg_default', 1024, 4157);
extent_id | file_id | forknum | block_id | blocks | usage_type
-----------+---------+---------+----------+--------+--------------
| 1 | 0 | 4157 | 1 | segment head
0 | 2 | 0 | 4157 | 8 | data extent
1 | 2 | 0 | 4165 | 8 | data extent
(3 rows)