MySQL代表了開源資料庫的快速發展。
從2004年前後的Wiki、WordPress等輕量級Web 2.0應用起步,到2010年阿裡巴巴在電商及支付場景大規模使用MySQL資料庫,再到2012年開始阿裡雲RDS for MySQL為成千上萬家客戶提供可靠的關系資料庫服務,阿裡雲RDS積累了來自内外部功能、性能、安全方面的衆多需求,打造了面向企業場景的AliSQL分支,包含了豐富企業級資料庫特性:
DynamicThreadPool(DTP):在核心中動态管理資料庫線程池,通過有限資源持續支撐大量建立資料庫連接配接請求,維持高效穩定的請求處理能力。
IndexMutexTuning(IMT):通過IMT優化大大降低索引節點分裂成本,大大提升類TPCC場景處理能力,在全記憶體的測試中,單機達到了39W的TpmC,相對于原生版本提升35-50%不等。
TDE&SM4:全新優化的TDE資料加密,并且支援國産加密算法SM4。
PerformanceInsight:針對資料庫SQL性能擴充多方面資訊,包括表統計資訊、索引統計資訊、SQL單次性能資料、IO統計資訊和關鍵性能資料輸出等。
AsyncFilePurge:優化大表删除,有效降低系統IO抖動影響。
SlowLogRotate:對慢日志設計切換機制,可有效降低大量慢日志造成的不穩定影響。
SQLOutline:通過Hint優化SQL語句執行計劃,可保障在各種環境變化中SQL執行計劃不變,如大版本更新、統計資訊變更等。
StatementConcurrencyControl(SCC):DBA可通過SCC幹預系統語句執行,對具體SQL限流控制并發度,緊急狀态保障資料庫穩定運作。
DDLRecycleBin:核心中增加資源回收筒,防止誤執行DROPTABLE/TRUNCATE TABLE造成的不可挽回的損害。
AWS作為全球雲市場的标杆,是其他雲廠商不斷追趕的目标。十年磨一劍,阿裡巴巴MySQL資料庫曆經十年的發展後,阿裡雲RDS MySQL和AWS RDS相比,性能上誰會更勝一籌?本文将一測究竟。
01、測試概述
本測試對比了阿裡雲RDS通用型執行個體(5.7/8.0版本)和AWS RDS通用T3型執行個體,在OLTP讀寫混合模型下的性能。測試使用了标準的sysbench 1.0工具,選擇的規格是8核32GB規格資料庫。測試場景選用的是記憶體命中型場景,250張表,每張表25000行資料。
測試結論是用同規格下性能最好的T3型AWS RDS 5.7/8.0和阿裡雲對應版本的RDS通用型執行個體對比,阿裡雲RDS通用型執行個體有絕對的優勢,讀寫混合場景峰值QPS比AWS RDS高80%左右。
02、測試環境
(*點選檢視大圖)

AWS RDS通用型執行個體分為四種類型
https://aws.amazon.com/cn/rds/instance-types/,
前期實測下來,相同CPU核數和記憶體規格的情況下,T3型執行個體性能最好。選用的規格是t3.2xlarge,8個vCPU。
AWS RDS的主備同步不依賴binlog。同步方式的說明見:
https://aws.amazon.com/cn/blogs/database/amazon-rds-under-the-hood-multi-az/。
跨AZ的情況下,AWS RDS是同步寫,是以對比測試中,阿裡雲RDS選用多可用區+半同步開啟+預設嚴格參數模闆。
03、測試資料
3.1 RDS 5.7讀寫混合場景
在不同并發條件下,阿裡雲RDS 5.7均較AWS性能占優。
阿裡雲RDS 5.7的峰值QPS比AWS高80.41%
3.2 RDS 8.0讀寫混合場景
在不同并發條件下,阿裡雲RDS 8.0均較AWS性能占優。
阿裡雲RDS 8.0的峰值QPS比AWS高77.88%
04、總結和展望
通過上述測試資料可以看出,阿裡雲RDS通用型執行個體相比于AWS RDS有較大的優勢。阿裡雲資料庫RDS MySQL在2020年将繼續快速奔跑,除了性能以外,将繼續圍繞企業訴求,建構資料庫核心能力,覆寫安全、可靠性、可用性、可擴充性等諸多方面。
Gartner預計,到2021年,雲資料庫在整個資料庫市場中的占比将首次達到50%;而到2023年,75%的資料庫要跑在雲平台之上。
去年11月,國際知名調研機構Gartner公布2019年全球資料庫魔力象限評選結果,阿裡雲成功進入“挑戰者”象限,連續兩年作為唯一的中國企業入選。
根據Gartner 統計資料,阿裡雲已經位居全球雲資料庫市場佔有率第三位以及中國市場第一位,年增長率達到116%。目前,已有超過40萬個資料庫執行個體遷移到阿裡雲上,包含政務、零售、金融、電信、制造、物流等多個領域的龍頭企業。
隻有保持一路快跑的勢态,才能在日益嚴峻的競争環境中持續領先,才能滿足雲上企業快速增長需求。阿裡雲資料庫RDS MySQL一直走在前列。