雙11特刊|一站式在線數據管理平台DMS技術再升級,高效護航雙11


簡介: 10萬+企業共同選擇的數據庫服務平台

阿里雲數據庫已連續多年穩定支撐天貓雙11,歷經極端流量場景淬煉。除了保障穩定順滑的基本盤,今年大促期間數據庫通過全面雲原生化,大幅提升用戶體驗,讓技術幫助業務產生更有價值的消費者體驗,持續通過技術創新賦能用戶,引領技術發展路徑。

雙11已圓滿落幕,但技術的探索,仍未止步。

前言

阿里雲一站式在線數據管理平台DMS,從最早的服務於集團內部業務的各個工具型產品,經歷了阿里集團數據庫各個時期的技術及架構演進、歷年雙十一的大促考驗、雲原生轉型,演進到今天以統一的雲架構,向阿里集團內部以及外部雲客戶提供一站式的數據管理服務,產品不斷的拓展邊界,提升技術深度,將阿里集團超大規模數據的管理方法,推向和服務於所有開發者。

image.png

關鍵組件

數據管理DMS: 作為數據庫團隊2009年上線給研發同學使用的一站式數據庫開發平台,為集團、螞蟻以及公有雲客戶提供數據庫實時訪問、數據庫研發規范落地、數據安全管理以及安全生產等能力。同時結合數據庫備份DBS能力為用戶提供一站式公共雲,混合雲,線下自建數據庫備份,除了穩定的備份恢復外,在2019年發布了雲原生CDM(Cloud Data Management)能力,實現備份數據秒級恢復,支撐了金融、教育、游戲等廣泛的客戶業務場景。

數據備份DBS:是數據庫團隊2017年發布的數據庫備份產品,為用戶提供一站式公共雲,混合雲,線下自建數據庫穩定的備份服務,同時在2019年release了阿里雲第一款雲原生CDM產品,利用雲的特性幫助客戶數據秒級恢復,秒級恢復產品已經支撐了教育,游戲,等重要客戶場景。

數據傳輸DTS:(Data Transmission Service,簡稱DTS),從2011開始支撐阿里集團容災到異地多活到阿里雲官網上雲,於2015年4月命名為DTS完成產品化,是全球第一個公有雲數據傳輸產品,融合了阿里集團的性能和業務特點與公有雲的數據源多樣性。集數據遷移、訂閱及實時同步功能於一體,能夠解決公共雲、混合雲場景下,遠距離、秒級異步數據傳輸難題。其底層基礎設施采用阿里雙11異地多活架構,為數千下游應用提供實時數據流,已在線上穩定運行6年之久。DTS支持關系型數據庫、NoSQL、大數據(OLAP)等數據源,在傳統商業數據庫遷移尤其是Oracle、DB2 大機&小機系列等商業數據庫具備兼容評估轉換和實時同步能力。

DMS 總述

DMS :  結合數據管理、數據備份、數據傳輸的技術沉淀,統一打造為全新DMS產品,為用戶提供一站式的全域數據資產管理、數據庫設計開發、數據集成與開發的全鏈路能力,在2021雙十一期間,為集團用戶提供全方位的數據資產管理服務。

image.png

業務挑戰

  1. 部分業務由於歷史數據堆積,使得存儲水位過高、表越來越大RT上升,面對這類問題DMS提供了歷史數據清理的功能,能夠讓業務無感的進行歷史數據的刪除清理,部分場景在清理完成后碎片率大增,存儲回收效果一般,面對這種情況,研發需要自行選擇一個時間做優化表操作,操作審批繁瑣,如何簡化操作降低存儲水位變成了一個業務側迫切希望解決的問題。
  2. 在數據庫的變更中,DDL的變更是風險較高的一個操作,特別在分庫分表的場景下如何控制DDL變更風險是業務同學對DMS提出的問題。
  3. 數據訂閱作為眾多中台產品的上游,提供了諸如應用緩存失效、廣告推送、搜索推薦以及雙十一獨有的GMV大屏等業務場景的功能基礎,今年新引入的庫倉一體化架構OLTP到OLAP能力,為手淘交易訂單搜索功能帶來的能力提升和用戶體驗大幅優化
  4. 手淘訂單搜索,用戶訂單搜索命中率低,用戶可能只記得商品名的模糊信息和商品店鋪的信息,老鏈路的訂單搜索只能根據查詢關鍵字在數據庫進行like匹配,如果輸入的關鍵詞不准確可能搜不到訂單;如果搜索詞過短,用戶查找訂單時間長,用戶為了增大命中率,會輸入較短的關鍵詞,這樣查詢的訂單數量過多,同時搜索的結果又沒有分類,用戶要在搜索結果中找目標訂單,只能滑動下一頁,查尋時間長,只能在雙十一大促期間進行功能降級。
  5. 2021年雙11大促,首次所有集團數據庫100%上雲,海量實例同時部署在中心站,集團作為VIP客戶和公有雲客戶同region部署,這樣會使得備份存儲的流量壓力非常大,如果沒有相關的技術方案,會導致集團上雲和公有雲客戶相互影響,而增量備份又是這里面的核心問題,當備份存儲流量壓力非常大的時候,增量數據堆積會導致客戶日志磁盤空間打滿導致實例RO,以及無法恢復到任意時間點。

技術升級

無鎖數據變更、無鎖表優化

通常在歷史數據刪除場景下,delete語句會攜帶時間等條件,而時間條件並不一定存在索引,會導致刪除速度極慢,且占用數據鎖;同時如果刪除數據量較大,會受binlog事務大小約束導致失敗。

DMS通過將大事務轉化為小事務的方式,控制執行時間、控制事務影響行數,通過優化后400GB的表刪除一千萬條數據約40g,緩慢刪除占用時長5個小時,0條慢SQL。

通過無鎖數據變更完成對超大表的歷史數據清理之后,再通過DMS的無鎖變更技術,重新對表數據做一次搬遷,達到優化表空間的目的。

DDL灰度變更

業務同學在對數據表進行結構變更時,通常DDL是一個整體事務,一旦出現問題整張表不可訪問。而在分庫分表場景下,在邏輯表維度上的業務被拆分為了多份,如果仍然整體進行變更,將不會發揮分庫分表在變更上的優勢。

利用這些分片來降低變更風險進行灰度是一個比較好的選擇,通過灰度策略控制,定義分庫分表的灰度策略為單表級別灰度、單庫下灰度、單實例下灰度三種方式。有了灰度,用戶結構變更更加淡定。

高效數據備份

大促峰值日志備份PITR能力不降級,DMS對集團XDB產生Binlog的數據進行了壓縮裁剪,同時結合集團XDB多副本節點的日志特性做到只備一份日志的能力。

流量分流:DMS對XDB的日志進行實時備份,在內部加了流量規則,可以將部分XDB Cluster的實例備份到其他存儲上,達到分流的作用。

少流量產生:DMS對XDB產生的binlog數據進行了壓縮裁剪,只備份了XDB leader上面的數據,由於XDB leader&follower上binlog完全一致,所以在異常恢復流程,只要找到對應的binlog斷開的位置,銜接上follower的日志即可。

流量隔離:考慮到集團上雲客戶和公有雲客戶在備份流量和數量上的相互影響,所以對集團上雲全量/增量,公有雲其他客戶全量/增量,進行了bucket隔離,同時對全量bucket進行了業務流量預測的限流,保證了公有雲客戶&集團上雲客戶增量有較大的上限,不至於流量不夠導致無法滿足秒級RPO。

0點峰值表現:第一次實現了雙十一大促日志備份不中斷,保障了秒級RPO,集團峰值流量日志寫入備份存儲流量和總流量達到了數百Gb/s,保證了實時寫入RPO。

庫倉一體技術架構

之前是通過數據庫T+1到數據倉庫再回流到數據庫展示相應的計算結果,鏈路較長,維護使用成本高,數據延遲大,高峰期對源庫影響大,往年的大促過程淘寶的歷史訂單搜索功能是限流使用的。

今年通過DMS+ADB一鍵實現的庫倉一體化架構實現了實時的數據獲取、實時傳輸與加工、實時查詢與展現,實現了全實時支持多維數據分析場景的交易訂單搜索能力,0點峰值DMS寫ADB在RPS百萬級別的流量下全程毫秒級延遲,ADB實時查詢結果毫秒級返回。經過庫倉一體技術架構升級后,手淘訂單搜索增加了“猜你想搜” 和 “類目搜索”的能力:

  1. 猜你想搜:根據搜索詞推薦聯想詞和店鋪名,用戶可以點擊聯想詞和店鋪名進行搜索,增加用戶搜索的命中率;
     
  2. 類目搜索:增加了按店鋪名進行搜索的功能,使得用戶搜索得到的訂單列表按類目進行分類,用戶訂單根據tab頁分類,減少每個tab的下拉數量。

最終通過庫倉一體架構,解決了過去大促功能降級給用戶帶來的使用影響,在本次雙十一過程中的功能完全開放使用。

image.png

庫存業務

基於阿里巴巴單元化架構的基礎,用戶購買商品時下單流量會被分流到各單元。DMS數據實時同步能力保障了各單元間數據庫中數據的實時一致,同時DMS提供的數據實時訂閱功能是庫存應用基於數據庫變化實時更新緩存服務的功能基礎。這些能力保證了用戶在客戶端的下單流程中對於剩余庫存所見即所得,提升了整個購物體驗。

DMS在庫存業務百萬級別RPS的流量壓力下,保證了全鏈路高效穩定。

交易&GMV大屏

在交易業務上,DMS為面向社會的GMV媒體大屏和面向內部高管的大屏提供最上層實時數據消費的能力。鏈路上的問題會直接影響到大屏上的數據准確性,為了保障穩定性,DMS在交易鏈路上采用了全鏈路主備服務的雙活架構,最終在交易峰值百萬級別RPS的流量下保障了GMV全鏈路高可用。

DMS支撐大促小結

DMS在2021天貓雙十一期間:

  1. 用數據脫敏方式保護了近50萬次敏感數據的動態實時訪問和靜態訪問,首次上線的精細封網管控,使得安全生產效率提升50%,有效攔截大查詢千余次,攔截DDL變更百余次
  2. 支撐了100%集團上雲實例恢復秒級RPO的功能,引入技術方案將流量帶寬占用降低了50%,首次支持使用非OSS存儲分擔大促峰值流量,保證了峰值流量增量備份不降級,全面保障了集團上雲核心交易場景可以隨時將數據恢復到任意時間點,提升了整個雙11的穩定性。
  3. 全網同步鏈路上萬條,訂閱任務幾十萬個,大促0點流量峰值期間,數分鍾內累計從源庫拉取PB級日志數據,累計向目標庫寫入上千億條事務,期間全網任務無中斷,核心任務無延遲。

原文鏈接
本文為阿里雲原創內容,未經允許不得轉載。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM