阿里雲DRDS 5.3 性能提升300%,比速超跑

近日,阿里雲發佈了第三代DRDS分佈式SQL引擎,即DRDS(阿里雲分佈式關係型數據庫服務)5.3 版本 ,相較於大多數(拆分鍵上的等值查詢、讀寫分離等)場景,DRDS 5.3在性能上提升到之前的300%,且無需依賴第三方組件,就可執行分佈式事務,使得操作實現最簡化。

極致性能源自多項卓越技術加身
超跑之所以跑得快,性能高,是因爲使用了渦輪增壓發動機,渦輪增壓器等作爲輔助。DRDS 5.3也不例外,使用了 Plan Cache、協程、FastSQL 等多項技術,
大幅提升了吞吐量,8C16G 規格的 DRDS 最大可以提供 6W+/s 的 QPS,這是什麼概念?就像文章開頭說說的,最大 QPS 較傳統SQL引擎提升高達300%。

首先,DRDS 5.3引入了 Plan Cache 技術能力,大幅降低了 SQL 解析與查詢優化的代價。

針對不同類型的 SQL,DRDS 5.3分成了多級 Plan Cache,其中,性能最高的被命中了一級 Plan Cache 的 SQL。無論參數取值如何,一定可以被下推到單分片執行的 SQL 會命中一級 Plan Cache,從而提升系統容量。

其次,在業務邏輯相同的情況下,通過使用協程模型與使用線程模型相比,系統容量提升了 30% 左右。

還有一點,DRDS 5.3 將Parser 部分,換成了從 Druid 剝離出來的 FastSQL。FastSQL 在 SQL 解析方面,比 antlr、javacc 等自動生成的 Parser
快了數十倍至數百倍,相對 DRDS 老版本的 Parser 帶來了一倍的性能提升。

DRDS 5.3的作用類似於統帥,除了要靠技術來實現性能提升,還需要豐富的拆分算法,滿足應用不同業務場景下的拆分訴求,也就是軟實力。DRDS 5.3獨創RANGE_HASH、RIGHT_SHIFT拆分算法,支持按數字、字符串、時間單獨或者混合分片等多種豐富拆分函數,讓操作100億數據如同操作100萬數據高效。

DRDS 5.3原生分佈式事務,整體事務鏈路更加穩定
DRDS 5.3 提供原生的分佈式事務功能,提供柔性事務與XA事務兩種事務方案供用戶在不同的場景下進行選擇。這對於用戶來說有哪些好處?不依賴任何第三方組件,能力集成在 DRDS Server 中,專有云無需額外資源進行部署。公有云上購買的實例即可立即使用,不產生額外費用。

一般情況下,當 DRDS 後端的 MySQL 爲 5.7 及以上版本時,推薦使用 XA 事務。

柔性事務的優勢在於放棄了隔離性,減小了事務中鎖的粒度,使得應用能夠更好的利用數據庫的併發性能,實現吞吐量的線性擴展。異步執行方式可以更好的適應分佈式環境,在網絡抖動、節點故障的情況下能夠儘量保障服務的可用性(Availability)。

XA 事務使用兩階段提交協議(XA Protocol)保護子事務的提交與回滾,消除了柔性事務的異步回滾問題。由於 XA Protocol 在提交與回滾階段始終加鎖,避免了事務結束前的髒讀和覆蓋,但是對性能有較大影響。

DRDS 5.3的超能力絕不僅於此,在SQL 兼容性方面,DRDS 5.3 最大的特點在於明確了 SQL 的邊界,也即能夠明確的說明哪些 SQL 支持、哪些 SQL 不支持,並且提供了非常豐富的分佈式 SQL 優化策略,例如對 Filter 的上拉、下壓、推導等優化,確保 DRDS 可以準確的識別出 SQL 中可以下推的部分;針對不同的場景,對排序與 Limit 進行優化,確保能將排序與 Limit 儘可能多的下推到存儲節點上,保證傳輸的數據量最小等等。

DRDS助力多家企業實現業務加速
DRDS經歷歷屆天貓雙十一核心交易業務和各類行業業務的考驗,並且成功將超能力賦予了多家企業,實現業務加速。

中國郵政目前新一代寄遞平臺、車管平臺、公式管理、CRM系統多達8個核心子系統均在使用DRDS。通過DRDS提供的數據庫拆分能力,快速的支持了中國郵政核心業務系統的不斷迭代,大幅節省了客戶針對數據庫層面的運維成本。

中石油新系統基於分佈式數據庫DRDS,真正的實現了完整的替換IOE解決方案。
除此之外,中國外匯、廣發銀行、萬科等企業均不同程度上將核心業務系統均構建在DRDS之上,張弛有度地滿足了業務的伸縮需求。

我們希望能有更多的企業認識到DRDS 5.3的超能力,歡迎大家持續關注DRDS,瞭解更多詳情請戳:
https://www.aliyun.com/product/drds

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章