盤點 2023年雙11背後的螞蟻核心技術

2021-09-02 14:09:28 字數 3257 閱讀 4358

小螞蟻說:

你們都很關心的 「ob雙11大促實戰分享」 專題來啦!本系列將為你系統性的介紹oceanbase支撐螞蟻雙11背後的技術原理和實戰分享。

從平台到架構,再到實現,一起來探索螞蟻雙11這場神秘的技術之旅吧!

2023年的雙11十週年,最終成交額以2135億元創紀錄收官,支付寶系統在這場「商業奧運會」中再次經受住了考驗。這也是oceanbase順利支撐螞蟻雙11的第五年。

從五年前,只有10%流量切到oceanbase上,到如今oceanbase 2.0版本成功支撐2023年雙11的支付寶核心鏈路。每年不變的是一如既往的表現平穩,絲般順滑,變化的是技術能力的不斷公升級和迭代。今年的雙11,oceanbase 2.0扛起了大樑,效能比去年提公升了50%,真正實現了「零成本」支撐大促。

今年的雙11,oceanbase致力於通過底層架構及平台能力的提公升,來實現雙11穩定性、成本優化、效能及效率方面的全方位的提公升。相較以往始終如一「絲般順滑」的大促能力外,2023年的雙11,oceanbase更加注重長久技術能力的沉澱:

每年雙11的壓力在不斷創造新高,支付系統需要具備百萬每秒的支付能力,那麼乙個亟待解決的問題是:如何解決最小資料分片的峰值能力超過單機效能的問題。

oceanbase 2.0應運而生,其目標是在應用無感知的情況下對資料分片進一步拆分,將資料sharding到無限多的機器上,實現極致彈性能力優雅支撐百萬支付峰值。

1.百萬支付架構

如下圖的百萬支付架構所示,傳統資料庫的彈性架構,將資料進行物理拆分到不同機器,業務在資料訪問、研發、後期維護及資料配套設施上都非常繁瑣;同時拆分後資源很難快速**,且資料拆分及聚合無法實現業務無損。

相比於傳統資料庫的彈性架構,oceanbase 2.0架構完全不侵入業務,內部通過分割槽實現資料分片的自組織及負載均衡,通過生成列及分割槽規則實現自動路由,通過分割槽聚合(partition_group)消除分布式事務效能開銷以提公升效能,從而實現無損線性伸縮。另外,資料分片間share_nothing及多版本的架構,實現分片故障隔離及單點故障消除的高可用架構。

2.效能提公升

為實現「零成本大促」,oceanbase 2.0花了非常多的精力致力於效能的提公升。相比oceanbase1.0,2.0在分布式架構上全面公升級,如原生sharding/分布式事務優化/優化事務提交日誌開銷。

oceanbase作為底層基礎軟體,任何微小的效能提公升都會為業務節省大量資源,秉承持續優化的匠心,oceanbase 2.0在資料庫底層架構、系統實現層面及資料庫執行環境全方位進行優化。最終,oceanbase 2.0相比1.0提公升了50%的效能,實現今年雙11大促的零機器增加。

雙11峰值需要大量的資源支撐,而峰值後資源處於低水位狀態,如何快速申請/釋放這部分資源?雙11當天非支付鏈路資源空閒,大促是否可以搶占這批資源?大促不同活動時間錯峰,不同鏈路的資源可否實現快速騰挪?類似的資源問題不一而足。

雙11大促資源成本與兩個因素相關,乙個是大促資源的總數目,另乙個是持有時長。我們可以通過系統優化提公升單機效能,來降低大促資源的總數目(如前章節提到的oceanbase 2.0的效能優化)。

那麼如何降低持有時長呢?我們統一的思路是:用「高峰期搶占/低峰值釋放資源」的方式來大幅降低持有時長;其兩個關鍵前提技術就是容器化和儲存計算分離。

1.oceanbase容器化

oceanbase容器化的核心思想是「資源排程」,大促目標就是「oceanbase能夠被快速排程到各種資源載體上(如離線資源、雲資源、峰值無壓力的資料庫其他集群)」;容器化遮蔽了底層資源載體的差異化,具備彈性部署高效的優點,是資源排程的前提條件。oceanbase打造自身排程能力,深入結合副本、租戶的概念,精細化資源畫像,使得ob容器化部署快速實現分時復用、資源搶占及混部。

2.儲存計算分離

儲存計算分離,顧名思義,將資料庫執行依賴的計算資源和儲存資源部署到不同的資源載體上,從而實現資料庫的弱狀態化,使得資料庫可分別對儲存和計算資源進行彈性伸縮。其好處是顯而易見的。

典型場景:

隨著業務規模的快速增長,系統穩定性sla預發嚴峻和oceanbase部署的多樣化,傳統平台已無法滿足我們的需求,可以預見不久的將來,運維將成為業務擴充套件的瓶頸。因此,oceanbase平台正在逐步走向智慧型化道路實現智慧型運維。

ocp著眼於sql優化診斷、故障根因分析和智慧型容量等大促關鍵場景,目標是將運維專家的技術經驗和ai演算法/機器學習技術相結合,分解運維關鍵技術,開發成一系列的智慧型運維模型,應用於大規模運維系統中。

眾所周知,sql plan的正確性對資料庫執行至關重要。ocp針對風險場景sql,在千萬峰值壓力下,實時進行plan正確性比對,並對可能存在效能變壞隱患的sql進行分鐘級修正。

容量水位是大促至關重要的一環,ocp通過資料建模/智慧型水位**對集群/租戶/docker進行容量畫像,結合oceanbase內建tenant group能力,實現容器/集群/租戶等多個維度的自動擴縮容,同時計算容量plan在集群/租戶維度混部,實現最佳負載均衡部署【 深度部署資源利用率達到(n-1)/n 】,大幅節省了機器資源。

ocp作為oceanbase的「智慧型大腦」,實時監控資料庫執行狀態,小至單條sql plan,大至數千台機器容量,真正做到了生產環境智慧型化全覆蓋。未來,ocp還將不斷創新資料庫智慧型化的運維之路,打造更加完善的資料庫自治體系。

螞蟻金服與金融機構最早建立的連線是基於支付業務的合作,後來又逐漸擴充套件了很多其他普惠金融類的業務,比如網商銀行的同業合作,借唄/花唄等。如今隨著在螞蟻金服內部多年積累的技術能力與產品能力,oceanbase也將全面走向外部,對所有行業開放,通過科技作為新的連線紐帶助力企業的數位化轉型。

過去金融業it系統的基礎架構建設基本都來自國外,如ibm、甲骨文、emc這些公司構建底層架構,其中門檻最高的就是資料庫的整體平滑替換。oceanbase團隊從成立之初就肩負著使命,即我們要做一款通用資料庫真正的去推動整個社會的進步,能夠讓整個社會的生產力發生變化。

從2023年底,oceanbase就開始準備走出去,用技術改變業務形態;用技術創造新的業務模式,與更多企業建立更為緊密的連線關係。近兩年對外服務的過程中,通過與isv的深度合作與賦能,不僅提供oceanbase核心的能力,也不斷豐富周邊配套產品生態,涵蓋使用資料庫過程中的方方面面。

未來,我們將繼續致力於提供高可用、高效能、低成本的資料庫服務,相信通過科技的連線助力更多企業,讓科技的產出變成可以量化的業務價值。

2023年天貓雙11交易額重要時刻表

2018年天貓雙11交易額重要時刻表 21秒,交易額破10億,比去年快了7秒。2分05秒,破100億。比去年用時縮短了將近1分鐘,比2016年短了近5分鐘。4分20秒,破191億,比去年縮短了將近1分半。超越2012年雙11全天的交易額!12分14秒,交易額破362億。已超過2013年雙11全天的成...

2023年天貓雙11交易額重要時刻表

2018年天貓雙11交易額重要時刻表 21秒,交易額破10億,比去年快了7秒。2分05秒,破100億。比去年用時縮短了將近1分鐘,比2016年短了近5分鐘。4分20秒,破191億,比去年縮短了將近1分半。超越2012年雙11全天的交易額!12分14秒,交易額破362億。已超過2013年雙11全天的成...

2023年天貓雙11交易額重要時刻表

2018年天貓雙11交易額重要時刻表 21秒,交易額破10億,比去年快了7秒。2分05秒,破100億。比去年用時縮短了將近1分鐘,比2016年短了近5分鐘。4分20秒,破191億,比去年縮短了將近1分半。超越2012年雙11全天的交易額!12分14秒,交易額破362億。已超過2013年雙11全天的成...