更新时间:2024-06-29 GMT+08:00
分区管理函数
proc_add_partition (relname regclass, boundaries_interval interval)
描述:用于给开启自动创建分区功能的表添加分区。
返回值类型:void
备注:该函数运行时,会在现有分区boundary的基础上,创建多个时间范围为boundaries_interval的新分区,直到new_part_boundary – now_time >= 29 * boundaries_interval,之后再额外多创建一个分区,保证该函数运行时,一定会创建一个新分区 。
示例:
1 2 3 4 5 |
call proc_add_partition('my_schema.my_table', interval '1 day'); proc_add_partition -------------------- (1 row) |
proc_drop_partition (relname regclass, older_than interval)
描述:用于给开启自动删除分区功能的表删除分区。
返回值类型:void
备注:该函数运行时,遍历表所有分区,并删除其中boundary小于(now_time - older_than)的分区;如果所有分区都满足删除条件,则保留一个分区,并truncate该表。
示例:
1 2 3 4 5 |
call proc_drop_partition('my_schema.my_table', interval '7 day'); proc_drop_partition -------------------- (1 row) |
pg_partition_management_time(table_name, time)
描述:用来修改自增自减分区调度任务的执行时间,默认为创建自增分区表的时间。该函数仅8.3.0及以上版本支持。
返回值:SUCCESS,任务时间修改成功。
参数说明:
- table_name为自增分区表表名,类型为name,
- time为数据切换任务调度时间,类型为Time。
示例:
1 2 3 4 5 |
call pg_partition_management_time('partition_management_time','3:00'); pg_partition_management_time ------------------------------ SUCCESS (1 row) |
父主题: 数据库对象函数