本文介紹RDS PostgreSQL叢集系列執行個體的架構、優勢和應用情境。
叢集系列介紹
RDS PostgreSQL叢集系列執行個體採用計算與儲存分離、一主多備的架構,支援自動故障切換、任意備節點可切換為主節點、備節點可讀、按需增刪節點、多可用性區域容災、節點粒度的監控、叢集節點拓撲管理等功能,相較於自建資料庫,更加經濟、靈活、可靠。
RDS PostgreSQL各系列支援的技術指標如下表所示。
指標 | 基礎系列 | 高可用系列 | 叢集系列 |
節點數 | 1個 | 2個(預設) 說明 高可用系列預設一主一備兩個節點,如需更多節點可建立唯讀執行個體。 | 2~9個 說明 建立叢集系列執行個體時,預設建立一主二備共3個節點,也可以建立一主一備共2個節點。執行個體建立完成後,可通過增加節點,將備節點數量提升到最多8個,也就是一主八備共9個節點。 |
備節點是否可讀 | 不涉及 | 否 | 是 |
地址類型 | 讀寫地址 | 讀寫地址 |
|
最大容忍不可用節點數 | 0 | 1 | n-1,n為叢集系列執行個體包含的節點數 |
可用性區域數量 | 1 | 小於或等於2 | 小於或等於叢集系列執行個體包含的節點數 |
架構
RDS PostgreSQL叢集系列,支援一主多備的高可用性部署。架構如下圖所示。
優勢
RDS PostgreSQL叢集系列與高可用系列相比:
更經濟
RDS PostgreSQL叢集系列執行個體的備節點可讀,無需再額外建立唯讀執行個體,可快速實現線性讀能力擴充,大幅度縮減了資源開銷和資源閑置成本。相比高可用系列執行個體需要增加唯讀執行個體,叢集系列最高可節省40%的成本。
通過叢集唯讀地址訪問可以RDS PostgreSQL叢集系列執行個體的備節點。RDS PostgreSQL叢集系列執行個體可免費建立叢集唯讀地址,支援將多個備節點添加到唯讀地址,可通過配置唯讀地址的負載比例,實現備節點負載平衡。詳情請參見查看或修改串連地址和連接埠。
更靈活
更可靠
多可用性區域容災
相比高可用系列一主一備兩個可用性區域容災,RDS PostgreSQL叢集系列執行個體的每個備節點均可參與容災切換,建議將每個節點配置在不同的可用性區域,實現多可用性區域容災。
可靠性更強的備節點
阿里雲技術團隊通過雲原生技術對RDS進行了一系列深度最佳化,進一步提升了RDS PostgreSQL叢集系列執行個體備節點的可靠性:
重構RDS高可用系統,將備節點的故障發現時間長度從分鐘級最佳化到秒級。
基於EBS(Elastic Block Storage)提供的秒級快照能力,將資料恢複耗時從幾十分鐘縮短到1分鐘,從而實現了99%的情境下,備節點從故障發生到節點恢複不超過10分鐘。
限制
功能限制
不支援跨可用性區域遷移。
建立執行個體、複製執行個體、大版本升級、重建執行個體等操作時,備節點數量最多配置為2個。
大版本升級時不會對唯讀Endpoint進行割接。使用割接的方式進行大版本升級前需要先刪除唯讀Endpoint,升級後重建唯讀Endpoint。
目前暫不支援基礎系列或高可用系列執行個體變更配置成叢集系列執行個體。
版本限制
僅支援建立大版本為14及以上版本的叢集系列執行個體。
叢集系列相關內容
購買叢集系列執行個體
購買叢集系列執行個體的方法,請參見快速建立RDS PostgreSQL執行個體。