函数
pg_obs_file_size(scheme_name.tablename)
描述:获取OBS上的表或者分区的CU文件名、文件大小信息,仅对列存版本colversion为3的表生效。
返回值类型:record
函数参数字段如下:
名称 |
类型 |
描述 |
---|---|---|
scheme_name.tablename |
regclass |
主表的schema.tablename/tablename/oid,或者分区表的OID。如果存在主表OID和分区OID相同的场景,建议使用表名作为入参。 |
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
--入参为tablename: SELECT pg_obs_file_size('t2_col_part_obs'); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows) --入参为schema.tablename SELECT pg_obs_file_size('public.t2_col_part_obs'); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows) --入参为oid SELECT pg_obs_file_size(16593); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows) |
pg_obs_file_size(scheme_name.tablename,partition_name)
描述:获取OBS上分区表分区的列存CU文件名、文件大小信息,仅对列存版本colversion为3的表生效。
返回值类型:record
函数参数字段如下:
名称 |
类型 |
描述 |
---|---|---|
scheme_name.tablename |
regclass |
主表的schema.tablename/tablename/oid。 |
partition_name |
cstring |
分区表表名。 |
示例:
1 2 3 4 5 6 7 8 |
SELECT pg_obs_file_size('public.t2_col_part_obs','p1'); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows) |
meta_cache_manual_append(scheme_name, rel_name)
描述:在下一次语句执行时,CN将对目标表元数据进行打包,并发送给只读DN。建议在技术支持指导下使用。
返回值类型:void。
函数参数字段如下:
名称 |
类型 |
描述 |
---|---|---|
scheme_name |
text |
目标表的scheme名称。 |
rel_name |
text |
目标表表名。 |
示例:
1
|
SELECT meta_cache_manual_append('public','t1_col_obs'); |
meta_cache_manual_clean()
描述:对之前通过调用meta_cache_manual_append注册的元数据进行清理。建议在技术支持指导下使用。
返回值类型:void
示例:
1
|
SELECT meta_cache_manual_clean(); |
pg_scan_residualfiles()
描述:用于扫描当前节点所在数据库的所有残留文件记录。连接到CN执行时,扫描当前CN节点所在数据库的本地残留文件和OBS全部残留文件。连接到DN执行时,扫描当前DN节点所在数据库的本地残留文件。该函数为库级函数,只针对当前数据库。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
pgscrf |
text |
记录残留文件信息的元文件本地路径。 |
1 2 3 4 5 |
SELECT * FROM pg_scan_residualfiles(); pgscrf --------------------------------------------------------- pg_residualfiles/pgscrf_meta_15842_20230912182912146379 (1 row) |
pgxc_scan_residualfiles()
描述:用于扫描所有节点上当前数据库的残留文件记录。该函数为集群级函数,仅支持在CN执行,与连接CN上当前所在的数据库相关。不支持备机执行。
参数类型: 无。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
node_name |
text |
主备节点共用的统一名称。 |
instance_id |
text |
记录残留文件所在的节点名称。 |
pgscrf |
text |
记录残留文件信息的元文件本地路径。 |
1 2 3 4 5 6 |
SELECT * FROM pgxc_scan_residualfiles(); node_name | instance_id | pgscrf --------------+--------------+--------------------------------------------------------- datanode1 | datanode1 | pg_residualfiles/pgscrf_meta_15854_20231106095437555205 coordinator1 | coordinator1 | pg_residualfiles/pgscrf_meta_15854_20231106095438240991 (1 row) |
pg_get_scan_residualfiles()
描述:用于获取当前节点的所有残留文件记录。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
handled |
bool |
残留文件是否已经被移动或者被更改。 |
dbname |
text |
所属数据库名称。 |
residualfile |
text |
残留文件路径。 |
size |
int |
残留文件大小,OBS路径的残留文件该项为0。 |
inode |
int |
残留文件在文件系统的索引节点号,OBS上残留文件该项为0。 |
atime |
time |
残留文件上一次访问时间,OBS路径的残留文件该项为空。 |
mtime |
time |
残留文件上一次修改时间,OBS路径的残留文件该项为空。 |
ctime |
time |
残留文件上一次状态改动时间,OBS路径的残留文件该项为空。 |
filepath |
text |
记录残留文件信息的元文件本地路径。 |
notes |
text |
注释。 |
1 2 3 4 5 6 7 |
SELECT * FROM pg_get_scan_residualfiles(); handled | dbname | residualfile | size | inode | atime | mtime | ctime | filepath | notes ---------+----------+------------------------------------------------------------------------------------------------------------------------------+------+-------+-------+-------+-------+----------------------------------------+- ------ f | postgres | /test/obsview/cudesc_check/user1/obs.xxx.com/cu_obs_tbs/tablespace_secondary/15854/19865 | 0 | 0 | | | | pgscrf_meta_15854_20231106095438240991 | (1 row) |
pgxc_get_scan_residualfiles()
描述:用于获取所有节点上残留文件记录。该函数为集群级函数,仅支持在CN执行,与当前所在的数据库无关。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
node_name |
text |
主备节点共用的统一名称。 |
instance_id |
text |
记录残留文件所在的节点名称。 |
handled |
bool |
残留文件是否已经被移动或者被更改。 |
dbname |
text |
所属数据库名称。 |
residualfile |
text |
残留文件路径。 |
size |
int |
残留文件大小,OBS上残留文件该项为0。 |
inode |
int |
残留文件在文件系统的索引节点号,OBS路径的残留文件该项为0。 |
atime |
time |
残留文件上一次访问时间,OBS路径的残留文件该项为空。 |
mtime |
time |
残留文件上一次修改时间,OBS路径的残留文件该项为空。 |
ctime |
time |
残留文件上一次状态改动时间,OBS路径的残留文件该项为空。 |
filepath |
text |
记录残留文件信息的元文件本地路径。 |
notes |
text |
注释。 |
1 2 3 4 5 6 7 |
SELECT * FROM pgxc_get_scan_residualfiles(); node_name | instance_id | handled | dbname | residualfile | size | inode | atime | mtime | ctime | filepath | notes --------------+--------------+---------+----------+------------------------------------------------------------------------------------------------------------------------------+------+---------+------------------------+------------------------+------------------------+----------------------------------------+------- datanode1 | datanode1 | f | postgres | base/15854/19863 | 0 | 2939427 | 2023-11-06 09:54:15+08 | 2023-11-06 09:54:15+08 | 2023-11-06 09:54:15+08 | pgscrf_meta_15854_20231106095437555205 | coordinator1 | coordinator1 | f | postgres | /test/obsview/cudesc_check/user1/obs.xxx.com/cu_obs_tbs/tablespace_secondary/15854/19865 | 0 | 0 | | | | pgscrf_meta_15854_20231106095438240991 | (2 rows) |
pg_archive_scan_residualfiles()
描述:用于归档当前节点的所有残留文件记录。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
archive |
text |
归档后的本地文件夹路径。OBS路径的残留文件归档在对应OBS数据库目录下。 |
count |
int |
归档文件夹中的文件数量。 |
size |
int |
归档文件夹中的文件大小。 |
1 2 3 4 5 |
SELECT * FROM pg_archive_scan_residualfiles(); archive | count | size -------------------------------------------------------------------+--------+------ pg_residualfiles/archive/pgscrf_archive_15842_20230912182934335330| 1 | 0 (1 row) |
pgxc_archive_scan_residualfiles()
描述:用于归档所有节点上残留文件记录。该函数为集群级函数,仅支持在CN执行,与当前所在的数据库无关。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
node_name |
text |
主备节点共用的统一名称。 |
instance_id |
text |
记录残留文件所在的节点名称。 |
archive |
text |
归档后的本地文件夹路径。OBS路径的残留文件归档在对应OBS数据库目录下。 |
count |
int |
归档文件夹中的文件数量。 |
size |
int |
归档文件夹中的文件大小。 |
1 2 3 4 5 6 |
SELECT * FROM pgxc_archive_scan_residualfiles(); node_name | instance_id | archive | count | size --------------+--------------+--------------------------------------------------------------+-------+------ datanode1 | datanode1 | pg_residualfiles/archive/pgscrf_archive_20231106103246489550 | 1 | 0 coordinator1 | coordinator1 | pg_residualfiles/archive/pgscrf_archive_20231106103246592449 | 1 | 0 (2 rows) |
pg_rm_scan_residualfiles_archive()
描述:用于删除当前实例中归档文件列表中的文件。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
count |
int |
所删除的残留文件数。本地路径的残留文件统计所删除的文件数,OBS路径的残留文件统计所删除的表目录数量。 |
size |
int |
所删除的残留文件中本地文件总大小。OBS路径的残留文件该项均为0。 |
1 2 3 4 5 |
SELECT * FROM pg_rm_scan_residualfiles_archive(); count | size -------+------ 1 | 0 (1 row) |
pgxc_rm_scan_residualfiles_archive()
描述:用于删除所有节点上归档目录中的文件。该函数为集群级函数,仅支持在CN执行,与当前所在的数据库无关。不支持备机执行。
返回值类型:record
函数返回字段如下:
名称 |
类型 |
描述 |
---|---|---|
node_name |
text |
主备节点共用的统一名称。 |
instance_id |
text |
记录残留文件所在的节点名称。 |
count |
int |
所删除的残留文件数。本地路径的残留文件统计所删除的文件数,OBS路径的残留文件统计所删除的表目录数量。 |
size |
int |
所删除的残留文件中本地文件总大小。OBS路径的残留文件该项均为0。 |
1 2 3 4 5 6 |
SELECT * FROM pgxc_rm_scan_residualfiles_archive(); node_name | instance_id | count | size --------------+--------------+-------+------ datanode1 | datanode1 | 1 | 0 coordinator1 | coordinator1 | 1 | 0 (2 rows) |
analyze_table(scheme_name, rel_name, sample_rate, random_rate default null, parallel_degree default null)
描述:并行采样数据到临时表,再对临时表执行全量ANALYZE,更新统计信息。
返回值类型:record
函数参数字段如下:
名称 |
类型 |
描述 |
---|---|---|
scheme_name |
name |
主表的scheme名称 |
rel_name |
name |
主表表名 |
sample_rate |
float8 |
采样率的百分比,范围为(0-100)。 采样率计算:min((10w/表的total_rows) * 100, 100) |
random_seed |
float8 |
随机种子, 默认值为0。 |
parallel_degree |
int |
并发度,默认值为10。 |
示例:
1
|
CALL analyze_table('public','t1_col_obs',10,0,20); |
pgxc_clear_disk_cache()
描述:用于完全清理磁盘缓存文件。
返回值类型:void
示例:
1 2 3 4 5 |
SELECT pgxc_clear_disk_cache(); pgxc_clear_disk_cache ----------------------- (1 row) |