標籤:

TiDB 幫助萬達網路科技集團實現高性能高質量的實時風控平台

作者 | 陳新江 萬達網路科技集團大數據中心

萬達網路科技集團( wanda-tech.cn/ )是中國唯一的實業+互聯網大型開放型平台公司,擁有飛凡信息、快錢支付、徵信、網路信貸、大數據等公司,運用大數據、雲計算、人工智慧、場景應用等技術為實體產業實現數字化升級,為消費者提供生活圈的全新消費服務。

萬達網路科技集團的技術團隊,建設和維護著一套實時風控平台。這套實時風控平台,承擔著各種關鍵交易的在線風控數據的寫入和查詢服務。實時風控平台後端的資料庫系統在高性能,可靠性,可擴展性上有很高的要求,並且需要滿足如下核心功能和業務要求:

  1. 風控相關業務數據實時入庫
  2. 實時風控規則計算
  3. 通過 BI 工具分析風控歷史數據
  4. ETL 入庫到 Hadoop 數據倉庫
  5. 應用開發側需要兼容 MySQL,降低應用改造門檻

為實現上述業務目標,萬達網路科技集團的技術團隊在實時風控資料庫選型的早期階段,首先選擇了 MySQL Galera Cluster 作為資料庫集群的技術架構。這套 MySQL 資料庫架構通過不同於 MySQL 主流複製技術的複製機制,實現在多個 MySQL 節點間建立強同步關係,實現數據的副本和高可用。但經過業務實踐,發現這套方案有諸多問題,其中比較突出的有以下幾點:

  • MySQL Galera Cluster 自身的強同步機制以大幅度降低集群整體性能為代價,集群整體性能比單節點 MySQL 還差。所以不能很好的滿足「風控相關業務數據實時入庫」的業務需求。
  • 同時,MySQL Galera Cluster 的 JOIN 支持非常弱,不足以支持 BI 相關的複雜分析。
  • 集群整體性能的短板加上對 JOIN 支持的薄弱,使得要在業務上實現大並發高性能的風控規則計算變的很困難。

上圖:風控平台原來採用的 MySQL Galera Cluster 集群架構

萬達的技術團隊還考察了市場上用的比較多的 MySQL 主從複製以及通過 MySQL Proxy 中間件實現分庫分表的方案。但這些方案,無論是高可用安全性,強一致性,還是對業務應用所需要的複雜事務/JOIN 操作以及橫向擴展能力上,都無法滿足實時風控平台的業務要求。這些問題集中反映在以下幾個方面:

  • 基於 MySQL 主從複製方式的高可用方案,容易出現諸如接入層腦裂和數據不一致的風險。
  • 基於 MySQL Proxy 中間件的方案,缺少對分庫分表後的跨庫跨表的分散式事務支持以及對複雜JOIN 的良好支持,因此也無法滿足業務上風控規則實時計算和複雜查詢的需求以及對業務團隊的 BI 需求的支持。
  • 基於 MySQL Proxy 中間件的方案需要業務代碼的開發妥協,需要顯式設計和指定分庫分表的切分規則和路由配置,開發改造和運維成本顯著增高。
  • 在實時風控平台的高並發高性能的對外服務過程中,在線靈活擴容的相關工作在 MySQL Proxy 中間件架構中無法高效和可靠的實施。

最終萬達的技術團隊,通過評估驗證,選擇了 TiDB 幫助他們實現一個高性能,高可靠性和高擴展能力的實時風控平台後台資料庫系統。

上圖:TiDB 的整體框架圖

TiDB 產品和技術方案對業務需求的支持和助力效果,集中表現在:

  1. 藉助 TiDB 的分散式計算和存儲引擎,集群對外服務的處理能力大大增強,高並發實時的風控規則計算能夠輕鬆的處理完,相比較原來的 MySQL Galera Cluster 方案,單位處理性能提升了數倍。並且資料庫集群獲得了線性提升和擴展的能力。
  2. 集群整體 QPS(萬級起)和 Latency (毫秒級) 對風控的實時性要求做出了技術保證。
  3. 無需考慮分庫分表,對業務應用透明無侵入,應用開發和維護變得直觀且簡單。業務相關數據量規模和請求即便高速增長,也無需擔心應用的複雜調整和運維的風險。
  4. TiDB 針對分散式事務和強一致性的完善設計以及對各種 JOIN 模式的支持,使得實時風控類和 BI 分析類的業務應用能夠高效運行。

這套實時風控平台,藉助於 TiDB 的可靠性架構和高性能分散式處理能力,在業務生產環境已經穩定運行超過半年,期間經歷過環境問題導致的故障,經歷過諸如 「618」 高並發、大流量活動的嚴格考驗。

萬達網路科技集團大數據中心技術專家陳新江表示:"TiDB 的表現讓萬達的技術團隊有了信心,接下來將在 TiDB 的基礎上,根據業務特點,拓展應用規模,增加諸如 TiSpark 複雜計算組件,整合 CDC 工具以提升 ETL 實時性以及增強 TiDB 運維管理能力等多項架構和技術演進工作,繼續在萬達的核心業務架構中發揮重要作用。"

推薦閱讀:

2017年「3·8女神節」營銷案例大合集!
10年10個印象深刻的失敗產品
所謂採生折割,是職業乞丐中最歹毒兇惡的一種,現實中破獲的案例有哪些?

TAG:TiDB | 案例 |