當前位置:
首頁 > 最新 > 招商銀行周偉:Fintech數據開放平台之資料庫軍規和內功修鍊

招商銀行周偉:Fintech數據開放平台之資料庫軍規和內功修鍊

作者:周偉 招商銀行 資料庫架構師

個人介紹:招商銀行資料庫管理室數據架構組Leader,從事資料庫行業14年,所負責的信用卡代授權數據架構,解決了主機下移的性能問題,並適應FinTech時代高並發、高可用、可擴展的業務場景,成功經受住雙十一促銷節海量支付請求的考驗。

以下是分享內容整理。

招商銀行行長田惠宇講過這樣一段話:金融科技銀行就是『以科技敏捷帶動業務敏捷』,創造最佳客戶體驗,實現效率、成本、風險的最佳平衡。在此思想指導之下,招商銀行的金融科技建設迅速展開推進。

在金融科技的進程中,招商銀行逐步從投資巨大、集中式的主機系統,遷移和轉換到分散式架構,以X86和雲計算為基礎的新平台模式。

為貫徹招行『移動優先』戰略,持續提升運維保障水平,招商銀行制定了明確的『數據開放平台應對策略』,並提出了四大解決方案:

通過應用讀寫分離、數據多活等,構建金融高可用架構;

通過運維標準化、流程化、自動化,提供雲服務能力;

加強DevOps建設,完善自動化發布;

進行分散式計算聯合創新,構建彈性伸縮能力

在這四大原則的指導之下,具體的數據架構規劃建設逐層展開。

在從主機下移到開放架構,首先需要獲取的是高可用,這是金融系統最基礎的保障要求。而Oracle提供的豐富MAA架構,正是高可用的成熟解決方案。比如Oracle的 Extended RAC,可以構建多站點的雙活架構,確保業務的可用性。

那麼招商銀行的資料庫建設,有哪些具體的落地要求呢?

在實踐中,招行形成了兼顧可用性和擴展性的5大要求:

讀寫分析;

分庫分表;

數據雙活;

無狀態冗餘;

數據放通;

其中前三項比較好理解,後兩項我們展開說明一下。

無狀態冗餘是指在應急的時候,通過預先創建的資料庫或錶快速接管『無狀態』的應用,使得業務可以在資料庫服務能力受損時繼續辦理,確保業務連續性不受影響

在這種情況下,冗餘庫可能使的某些業務交易受損,但是核心流程不受影響,在主生產庫恢復之後,可以通過數據合併確保數據的一致性。

編者注:這種『無狀態冗餘』充分體現了提前預案的重要性,很多企業在系統架構時,未考慮應急情況,則主生產流程上出現任何問題,都可以導致業務全面中斷。所以,一個真正高可用的架構,要充分考慮各種可能出現的異常,並且做出提前的預案。

招商銀行的『數據放通』是指,在關鍵路徑上有不強依賴資料庫的備選路徑,在資料庫正常情況下,業務操作通過首選路徑,同步寫入資料庫;如果資料庫不正常,則通過消息隊列、本地緩存或者日誌文件落地數據,通過非同步寫入資料庫,使業務連續性不受資料庫可用性的影響

為了確保整個系統的高可用,招商銀行也對投產發布進行了嚴格的管控。在准入判斷時,對於新增系統設備,必須滿足『第二級准入條件』,也就是前面所說的5大要求,確保整體制度、高可用架構的規範落地

招商銀行通過持續的DevOps建設,應用發布的自動化平台極大的提高了系統的發布效率,將以前以月計算的發布周期縮短到以周或者天計算。極大提高的應用的敏捷性:

在後端資料庫環境的部署上,也實現了全流程的自動化,完成一套環境的構建,從一到兩周縮短到不到兩小時即可完成。

招商銀行的資料庫運維操作,遵循了從原子化標準化、到流程編排的自動化演進過程,已經實現了工具化和平台化,下圖展示了一鍵導出導入的功能設計,從流程、腳本,到前端自助式的頁面,效率大大提升。

在數據雙活架構上,招商銀行實現了成熟的設計和迭代落地,下圖展示了代授權業務的異地數據雙活設計,整體設計的概要如下:

深圳和上海雙數據中心;

每個數據中心是2節點的RAC集群;

資料庫根據客戶號後兩位將數據拆分;

RAC不同節點訪問數據嚴格隔離;

四個節點分別訪問四部分數據;

深圳和上海之間通過OGG進行數據同步;

這個架構是兼顧性能和高可用的典型架構,數據訪問隔離確保RAC集群的高性能,數據異地訪問隔離,確保同步的有效性。在這個架構中,本地節點失效,RAC來保障,站點失效,異地來保障

為了減少對於生產的影響,確保日誌的有效落地,在兩地還分別設立了本地日誌落地點,在此進行日誌抽取分析:

對於無狀態冗餘系統,其高可用架構設計如下圖:

對於某些查詢密集型功能,其靜態數據查詢,實現了讀寫分離的設計。確保分散主庫的讀壓力,例如,對於用戶綁卡列表查詢,這個展示在用戶登錄之後的信息,查詢需求非常大,但是不做數據操作修改,最適合讀寫分離改造。所以按照以下邏輯架構進行了專門的設計:

最後,感謝周偉老師授權社區發表和分享招商銀行的成功經驗。他的團隊正在擴充人手感興趣的可以關注招聘信息:

資源下載

關注公眾號:數據和雲(OraNews)回復關鍵字獲取

2018DTCC, 資料庫大會PPT

2017DTC,2017 DTC 大會 PPT

DBALIFE,「DBA 的一天」海報

DBA04,DBA 手記4 電子書

122ARCH,Oracle 12.2體系結構圖

2017OOW,Oracle OpenWorld 資料

PRELECTION,大講堂講師課程資料

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雲和恩墨 的精彩文章:

新增視圖找出外部 SCN 跳變

TAG:雲和恩墨 |