RDS PostgreSQL主实例支持开启HTAP加速功能,通过列式存储引擎提升分析查询性能。本文介绍如何为RDS PostgreSQL主实例开启HTAP加速功能。
适用范围
RDS PostgreSQL主实例类型为基础系列或高可用系列。
集群系列实例暂不支持开启HTAP加速功能。
注意事项
触发行转列后,系统会新增列式存储,请关注实例磁盘使用情况,避免磁盘空间不足。
主实例开启HTAP过程中会发生一次闪断,请在业务低峰期操作,或确保应用具备自动重连机制。
主实例开启HTAP后,无法再添加DuckDB分析只读实例;已挂载DuckDB只读实例的主实例也无法开启HTAP功能。
开启HTAP的主实例执行数据库恢复操作后,恢复生成的新实例不会自动继承HTAP功能,需要重新开启。
操作步骤
步骤一:开启HTAP加速
登录RDS管理控制台。
在左侧导航栏,单击实例列表,然后在上方选择实例所在地域。
找到目标实例,单击实例ID。
通过以下任一方式进入HTAP加速开启页面:
方式一:在实例详情页上方,单击开启HTAP加速。
方式二:在实例详情页的配置信息区域,找到HTAP加速配置项,单击设置。
在RDS PG HTAP加速前置检查弹窗中,查看前置条件检查结果。
等待开启完成。开启成功后,在实例详情页的配置信息区域,HTAP加速状态显示为已开启。

步骤二:配置列式存储
主实例开启HTAP加速后,您需要为需要进行分析查询的表配置列式存储。具体操作如下:
通过DMS或其他数据库客户端工具,使用高权限账号连接目标数据库。
执行以下命令,创建rds_duckdb扩展:
CREATE EXTENSION IF NOT EXISTS rds_duckdb;执行以下命令,将指定表转换为列式存储:
单表转换:
SELECT rds_duckdb.create_duckdb_table('表名');说明将
表名替换为实际需要转换的表名。如需转换多个表,请多次执行该命令。批量转换:
SELECT rds_duckdb.create_duckdb_tables('{a,b,c...}');说明使用
create_duckdb_tables(复数形式)批量转换多个表,表名需要使用中括号格式,多个表名之间用英文逗号分隔。
