云盘版本的RDS PostgreSQL实例数据表文件都存储在云盘(ESSD)中,在数据量较大时,可能会面临较高的存储成本。通常,RDS PostgreSQL实例的数据包含冷数据和热数据。通过数据归档功能,可以将对象存储(OSS)用作归档冷数据的存储介质,从而显著降低存储成本。
功能简介
RDS PostgreSQL实例利用表空间和外部文件系统来实现对OSS的访问,允许用户通过DDL完成数据在ESSD和OSS之间的转换。启用数据归档功能的RDS PostgreSQL实例会在数据目录之外增加一个冷存储目录/cold-data,并添加该目录对应的表空间rds_oss。rds_oss表空间中的数据存放在OSS中,pg_default表空间中的数据存放在ESSD中。
开启RDS PostgreSQL数据归档功能后,可通过执行以下DDL语句,实现数据在ESSD和OSS之间的转换。
-- vacuum
VACUUM $tableName;
-- 归档
ALTER TABLE $tableName SET tablespace rds_oss;
-- 取回
ALTER TABLE $tableName SET tablespace pg_default;
当前RDS PostgreSQL数据归档仅支持只读查询。
功能优势
开启用RDS PostgreSQL数据归档功能后,利用OSS的海量、安全、低成本和高可靠特性,您可以在RDS PostgreSQL上实现极低成本、无限容量的归档数据存储,并支持低频数据访问。相较于ESSD PL1云盘,数据存储成本下降了80%。
数据归档到对象存储服务(OSS)后,若数据库实例的云盘出现大量空余空间,可考虑对云盘进行缩容,以降低存储成本。详情请参见云盘版RDS PostgreSQL实例存储空间缩容。
适用范围
引擎:RDS PostgreSQL
大版本:15.0
小版本:20240229或以上
产品系列:基础系列、高可用系列
产品类型:标准版、经济版
存储类型:通用云盘
实例计费方式:包年包月、按量付费
实例规格:CPU核数大于等于8核
地域:暂不支持韩国(首尔)、澳大利亚(悉尼)、阿联酋(迪拜)和英国(伦敦)。
使用限制
开启数据归档后,会影响实例的备份及部分功能:
不支持秒级备份。
不支持跨地域备份。
在进行库表恢复时,只能恢复所选数据库中未进行数据归档的数据。
在进行备份集下载时,所下载的备份集中仅包含尚未进行数据归档的数据。
已开启数据归档的实例,相较于未开启时,由于需要恢复数据归档的数据,备份/恢复的时长会增长。
注意事项
进行数据归档操作前需要对目标表进行VACUUM操作。
受限于OSS的访问延迟,相比于ESSD存储,冷数据表的数据访问会具有更大的延迟(10ms级别)。
OSS和读取会占用一部分内存,同时访问OSS侧数据将占用一定比例的ECS的网络带宽资源,因此需要合理调整数据转换和数据访问的速度和频率。
计费
公测期间免费。
开启和关闭数据归档功能
开启数据归档功能
新购实例时,在实例购买页开启数据归档功能。
已有的存储类型为通用云盘的实例,可以在实例详情页开启数据归档功能。
实例购买页
在选择存储类型时,选择通用云盘,页面会自动显示三层存储(缓存、数据、冷存)的配置栏,可在冷存配置项中打开数据归档功能的开关。
实例详情页
访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在实例详情页面,在基础信息区域单击通用云盘开关设置,在冷存配置项中打开数据归档功能的开关。
重要开启数据归档OSS功能会出现约30s左右的闪断,请在业务低峰期操作并确保应用程序具有自动重连机制。
关闭数据归档功能
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在实例详情页面,在基础信息区域单击通用云盘开关设置,在冷存配置项中关闭数据归档功能的开关。
重要数据归档OSS功能的关闭过程并不是无损操作,会有30s左右的闪断。
数据归档OSS功能关闭时要求OSS中没有归档表数据,如果OSS中有归档表数据则不允许关闭,需要先通过DDL将归档表转为在线表或者将归档表DROP掉,再关闭数据归档OSS功能。
查看归档数据
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏,单击冷存管理。
在归档层设置页面,查看已归档的数据。
- 本页导读