本文介紹RDS MySQL叢集系列執行個體的架構、優勢和應用情境。
叢集系列介紹
RDS MySQL叢集系列執行個體採用計算與儲存分離、一主多備的架構,支援自動故障切換、任意備節點可切換為主節點、備節點可讀、按需增刪節點、多可用性區域容災、節點粒度的監控、叢集節點拓撲管理等功能,同時還可啟用MGR保障RPO=0,相比自建資料庫,更加經濟、靈活、可靠。
RDS MySQL各系列支援的技術指標如下表所示。
|
指標 |
基礎系列 |
高可用系列 |
叢集系列 |
|
節點數 |
1個 |
2個(預設) 說明
高可用系列預設一主一備兩個節點,如需更多節點可建立唯讀執行個體。 |
2~9個 說明
建立叢集系列執行個體時,預設建立一主二備共3個節點,也可以建立一主一備共2個節點。執行個體建立完成後,可通過增加節點,將備節點數量提升到最多8個,也就是一主八備共9個節點。 |
|
備節點是否可讀 |
不涉及 |
否 |
是 |
|
地址類型 |
讀寫地址 |
讀寫地址 |
|
|
複製模式 |
無 |
非同步、半同步 |
非同步、半同步、組複製 |
|
最大容忍不可用節點數 |
0 |
1 |
n-1,n為叢集系列執行個體包含的節點數 |
|
可用性區域數量 |
1 |
小於或等於2 |
小於或等於叢集系列執行個體包含的節點數 |
架構
RDS MySQL 5.7、8.0、8.4支援叢集系列,支援一主多備的高可用性部署。架構如下圖所示。
優勢
更經濟
RDS MySQL叢集系列執行個體的備節點可讀,無需再額外建立唯讀執行個體,可快速實現線性讀能力擴充,大幅度縮減了資源開銷和資源閑置成本。相比高可用系列執行個體需要增加唯讀執行個體,叢集系列最高可節省40%的成本。
可以通過以下兩種方式訪問RDS MySQL叢集系列執行個體的備節點:
-
通過叢集唯讀地址訪問:RDS MySQL叢集系列執行個體可免費建立叢集唯讀地址,支援將多個備節點添加到唯讀地址,可通過配置唯讀地址的負載比例,實現備節點負載平衡。詳情請參見查看和管理執行個體串連地址和連接埠。
-
通過資料庫代理訪問:RDS MySQL叢集系列執行個體支援開通資料庫代理服務,實現主備節點的讀寫分離。相比叢集唯讀地址,資料庫代理提供了更多高階的能力,包括自動讀寫分離、串連保持、串連池、延遲閾值、事務拆分等。詳情請參見開通資料庫代理、什麼是資料庫代理。
更靈活
-
節點的靈活部署
相比基礎系列和高可用系列的固定節點形態,RDS MySQL叢集系列執行個體實現了節點數可變的拓撲管理。可在建立執行個體後,根據業務需求靈活增刪節點,實現更優的性價比。詳情請參見增加執行個體節點、刪除執行個體節點。
-
節點粒度的監控
RDS MySQL叢集系列執行個體提供了節點粒度的監控資料,使用者可以直觀地看到每個節點的監控情況。
更可靠
-
多可用性區域容災
相比高可用系列一主一備兩個可用性區域容災,RDS MySQL叢集系列執行個體的每個備節點均可參與容災切換,建議將每個節點配置在不同的可用性區域,實現多可用性區域容災。
-
資料強一致性
三節點及以上的叢集系列,支援使用組複製(MySQL Group Replication,MGR)。組複製基於分布式一致性協議(Paxos),事務在主節點提交之前,會將事務的資料發送到各個備節點上,確保超過半數備節點收到事務的資料後,事務才能在主節點提交。相較於半同步或非同步複製,組複製提供資料強一致性,資料安全性更高。
-
可靠性更強的備節點
阿里雲技術團隊通過雲原生技術對RDS進行了一系列深度最佳化,進一步提升了RDS MySQL叢集系列執行個體備節點的可靠性:
-
重構RDS高可用系統,將備節點的故障發現時間長度從分鐘級最佳化到秒級。
-
基於EBS(Elastic Block Storage)提供的秒級快照能力,將資料恢複耗時從幾十分鐘縮短到1分鐘,從而實現了99%的情境下,備節點從故障發生到節點恢複不超過10分鐘。
-
當備節點延遲超過7200秒(2小時),備節點會通過自動重搭的方式進行修複。
-
應用情境
適用於有大量流量高峰讀請求和資料智能分析需求的大中型企業的生產資料庫情境,如互連網新零售行業、汽車製造行業、教育行業、企業大型ERP系統等。
MySQL叢集系列相關內容
|
類型 |
內容 |
|
叢集系列配置 |
|
|
其他系列升級為叢集系列 |
|
|
其他執行個體遷移到叢集系列執行個體 |
|
|
組複製 |
|
|
資料庫代理 |
購買執行個體
如何購買叢集系列執行個體請參見第一步:建立RDS MySQL執行個體與設定資料庫。