阿里雲重磅釋出RDS for SQL Server AlwaysOn叢集版
2018年雙十一剛過,阿里雲資料庫釋出RDS for SQL Server AlwaysOn叢集版,這是業界除微軟雲SQL Database外,首家雲端計算公司基於SQL Server最新AlwaysOn核心技術實現的資料庫叢集版,並且是經過雙十一檢驗的商業化版本。
全形態的產品集合
縱觀整個RDS for SQL Server的產品迭代圖,AlwaysOn叢集版的上線標誌這SQL Server資料庫在阿里雲RDS平臺的全面覆蓋,阿里雲資料庫實現了針對企業客戶不同階段的產品體系的匹配。
基礎版針對可用性要求不高的業務,並且成本是首要關注選項的客戶,如初創企業,是最優選擇。WEB版價格甚至比自建還要低,卻能獲得RDS的運維管理等多項服務,價效比最高。
隨著業務的發展,關鍵業務的可用性要求變高,甚至要求7X24小時的不間斷服務,RDS for SQL Server 高可用版基於微軟Mirror技術實現,滿足此類業務需求。此外,針對企業級客戶特性,在高可用版中開放了大量高階特性,如複製模式設定,使用者可以根據需求設定主備節點複製模式可實現業務的高可靠或者高效能。此外高可用版本支援Linked Server,實現在RDS中訪問其他RDS甚至自建資料庫。特別地,在高可用版本中,開放了變更資料捕獲(CDC,Change Data Capture)技術,客戶可根據CDC提供的能力,同步資料庫的變化,實現資料複製到其他例項。高可用版滿足了企業客戶主流業務需求。
隨著業務的急速發展,系統負載不停增加,企業就對資料庫的橫向擴充套件能力提出了要求,RDS for SQL Server叢集版就是為了滿足此類苛刻要求而推出的。AlwaysOn叢集版不但提供了高可用版的所有特性,而且還實現了資料庫能力的橫向擴充套件,客戶可簡單的通過購買只讀例項,就可以實現擴容資料庫讀能力,最少可擴容到原主例項的七倍讀能力。此外,客戶可通過增加一個獨立的只讀例項,專門提供一個特定業務的查詢服務,比如專給資料智慧部門提供資料分析服務。
RDS for SQL Server AlwaysOn叢集的只讀例項支援獨立選擇規格,同時預設和主例項採用非同步資料複製方式兼顧了效能和價效比,當然客戶可自定義為同步方式,從而實現三個節點的資料同步一致性,對資料提供最大的安全保護。注意,我們支援最多可設定1個只讀節點和主例項之間的複製模式為同步複製,並且建議該只讀節點的規格要和主例項規格保持一致,否則會影響主例項的寫入效能。
如何購買阿里雲資料庫RDS for SQL Server AlwaysON叢集版
要購買AlwaysON叢集版,在RDS購買頁面選擇SQL Server後,選擇“2017企業叢集版”,然後選擇對應規格後購買,生產出來的就是AlwaysON叢集版的主例項,包括Primary主節點和一個用作保障高可用的Secondary備節點,主備節點之間是資料複製預設是同步模式,客戶也可基於實際情況選擇效能優先設定為非同步複製模式。
RDS for SQL Server AlwaysON叢集版是基於2017版本的,官方相容以前版本,實際使用情況可相容到2008r2版本。這也說明要使用AlwaysON叢集版,客戶必須購買2017企業版SQL Server,若客戶之前是低版本則需要升級。 RDS將會短期內提供從RDS低版本升級到2017企業版的工具。在購買完主例項後,客戶可以在主例項的管控介面購買只讀例項,最多可購買七個只讀例項。另外只讀例項提供了通用型例項規格,最大16核64G記憶體規格,具有很高的價效比,可以將更多的讀請求放到只讀例項,實現成本的最優化搭配。
RDS for SQL Server AlwaysOn叢集版的核心技術
AlwaysOn是原生支援High Availability和Disaster Recovery的技術,本身又分為Failover Cluster Instances(後續簡稱FCI)和Availability Groups(後續簡稱AG),下面的圖是FCI和AG的基礎架構,其中FCI和常規版本的AG都依賴Windows Server Failover Clustering(後續簡稱WSFC),不同點是FCI是Share Storage而AG是Share Nothing,FCI是例項級別同步而AG是DB級別
阿里雲資料庫設計AlwaysON叢集版,鑑於擴充套件性和穩定性要求我們選擇的是AG技術方案,同時我們更近一步在實現上去除了WSFC(如下圖所示),替代於阿里自研的HA監控系統,實現了叢集依賴元素最少設計,根除WSFC和AD證書帶來的穩定性問題。同時由於靈活的節點配置,新架構下可方便實現在不同可用區、甚至未來在不同地域獨立部署只讀節點,可以在資料庫層實現原生的兩地三中心架構。在資料可靠性方面,2017版本中引入了REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT引數,可實現主備節點的強制同步,確保資料不丟。
RDS for SQL Server AlwaysOn 叢集版的案例
2018年雙十一中,三隻松鼠利用最新版的RDS for SQL Server AlwaysON叢集版順利支撐了原來50倍業務壓力的增長。
結合於RDS for SQL Server AlwaysON叢集版的靈活價格,三隻松鼠雙十一架構採用瞭如圖的2+3模式,其中主例項的主備節點通過臨時開啟非同步複製以獲得最大效能,三個只讀例項全部非同步複製實現效能最大化。將所有的與寫無關讀全部引流到只讀例項1和只讀例項2,順利支撐了50倍業務壓力增長。另外將業務BI分析查詢放到專門的只讀例項3,將高峰期的流量干擾降低到最小,並且只讀例項3規格按需使用,極大的節省了成本。
阿里雲資料庫RDS for SQL Server AlwaysOn 叢集版商業化釋出,除微軟外在業界實屬首家,它與 Azure SQL Database遙想呼應,將SQL Server強大的AlwaysON技術能力帶到雲上,為企業級客戶的發展提供了全棧的產品支援。