在Aurora PostgreSQL中使用分区按列表对表进行划分,使得数据插入更加高效,但是如果分区规则中的某些分区未被使用,会导致存储空间的浪费。为了避免这种情况,可以使用以下步骤检查和优化未使用的分区。
SELECT
schemaname,
tablename,
partition_name,
partition_bound_spec,
create_time,
last_analyze
FROM pg_partitions
WHERE tablename = 'your_table_name'
AND partition_bound_spec < 'maxvalue';
ALTER TABLE your_table_name DROP PARTITION partition_name;
CREATE TABLE your_table_name (
...
)
PARTITION BY LIST(column_name) (
PARTITION p_1 VALUES (1),
PARTITION p_2 VALUES (2),
...
PARTITION p_non_listed VALUES (DEFAULT)
);