當您在RDS PostgreSQL上進行複雜查詢並期望快速獲得結果時,可以流量分析加速引擎rds_duckdb。該引擎基於DuckDB構建,提供列存表與向量化執行能力,無需修改原始SQL即可顯著提升複雜分析查詢的執行速度。
功能簡介
RDS PostgreSQL預設使用行存格式儲存資料,行存適合線上交易處理(OLTP)情境的高頻點查與更新,但在分析(OLAP)情境下需要掃描大量資料時效能受限。rds_duckdb外掛程式在RDS PostgreSQL中整合了DuckDB分析引擎,通過以下能力加速複雜查詢:
列存格式:將資料按列組織儲存,對於只涉及部分列的彙總、統計類查詢,只需讀取相關列,大幅減少I/O開銷。
向量化執行:以批量資料為單位進行計算,充分利用CPU的SIMD指令與緩衝局部性,相比傳統的逐行執行(火山模型)有數倍至數十倍的效能提升。
無侵入使用:原始SQL語句無需任何修改,業務可平滑遷移至加速鏈路。
適用情境
複雜報表與即席查詢(Ad-hoc Query),涉及多表JOIN、GROUP BY、彙總計算。
資料分析與統計情境,單表資料量較大且查詢只涉及部分列。
HTAP混合負載情境,希望在同一份資料上同時支援線上事務與分析查詢。
開啟方式
在正式流量分析加速能力前,請先完成執行個體配置。RDS PostgreSQL提供以下兩種方式,您可以根據業務負載特徵進行選擇:
開啟方式 | 資源模式 | 推薦情境 | 操作文檔 |
主執行個體開啟分析加速 | PostgreSQL與DuckDB共用主執行個體資源,部署簡單、成本較低。 | TP負載較輕或允許AP查詢佔用部分主執行個體資源的業務,希望快速驗證加速效果。 | |
DuckDB分析執行個體 | 獨立部署DuckDB分析執行個體,與主執行個體進行資料同步,AP與TP負載在實體資源上完全隔離。 | 對線上業務延遲敏感的核心業務,需要保障TP穩定性,同時承載大規模AP分析查詢。 |
如果您不確定如何選擇,建議優先採用DuckDB分析執行個體方式,將分析負載與線上事務隔離,避免AP查詢影響核心業務的效能與穩定性。
使用方法
成功開啟HTAP加速功能後,您可以通過rds_duckdb外掛程式建立列存表、匯入資料並執行查詢。詳細的文法說明、表管理操作、查詢使用方式,請參見AP加速引擎(rds_duckdb)。
效能測試
如果您希望量化評估rds_duckdb對複雜查詢的加速效果,可以參考標準TPC-H測試方案。該方案包含完整的測試資料準備、查詢執行步驟與結果對比,詳情請參見AP加速引擎(rds_duckdb)效能測試。
免費體驗
如果您希望快速體驗rds_duckdb的核心功能,可以使用免費體驗入口,無需購買額外資源即可完成簡單的AP加速查詢驗證。詳情請參見免費體驗RDS PostgreSQL AP加速引擎(rds_duckdb)。