國產金融級分布式數據庫在金融核心場景的探索與實踐
金融核心場景分布式數據庫發展驅動力
本部分的分享將圍繞以下問題展開,即金融行業為什么會產生分布式數據庫的需求。回歸本源,分布式數據庫是基于業務與技術的需求和發展以及監管要求下,解決當下以及未來趨勢發展等問題,更優更穩定地滿足金融銀行業發展的選擇。短期看雖有不足,用長遠和發展的眼光看,對支撐金融需求、滿足監管要求、提升自主可控能力、有效降低風險、合理控制系統建設成本等諸多方面都有助力和支撐作用,是金融銀行業基礎設施、基礎軟件建設的重點之一。
具體來看,這主要源于以下三方面的驅動:金融監管政策的指引、金融業務發展要求、金融業系統技術與架構的發展趨勢之下衍生的數據庫要求。
金融監管政策指引
眾所周知,傳統老牌的數據庫廠商的產品有很深厚的用戶基礎。要在新興的分布式數據庫領域中去契合金融核心場景的需求,我們仍有很多不足需要改進。在發揮分布式數據庫優勢的同時,我們需要解決以往在其他領域從未出現過的新問題,同時還要在既有的技術體系并綜合歷史客觀現狀之上進行延續,這也是我們當下面臨的困難和挑戰。
2021 年末,中國人民銀行發布了《金融科技發展規劃 2022-2025 年》。2022 年初,中國銀保監會也發布了《銀行業保險業數字化轉型指導意見》(以下簡稱《指導意見》)。該文件將安全視為首要因素,在安全的基礎上去實現發展和創新。聚焦到分布式數據庫以及金融核心場景、技術領域上,《指導意見》也從多方面提出了明確的要求:
基本原則部分中提到,要“協同推進組織架構、業務模式、數據治理、科技能力等方面的變革”,“推動機制創新,實現業務創新和技術創新相互帶動”,“確保網絡安全、數據安全”。
科技能力建設部分中提到,要“提高科技架構支撐能力”,“推動傳統架構向分布式架構轉型,主要業務系統實現平臺化、模塊化、服務化,逐步形成對分布式架構的自主開發設計和獨立升級能力”,要“加快數據庫、中間件等通用軟件技術服務能力建設,支持大規模企業級技術應用”。
同時還要“優化數據中心布局,構建多中心、多活架構,提高基礎設施資源彈性和持續供給能力”,“推進基礎設施虛擬化、云化管理,建立對信息科技資源全方位覆蓋的統一監控平臺”,“提高運維側研發能力,積極運用大數據加強態勢感知、故障預警和故障自愈,不斷提高運維智能化水平”。
戰略規劃與組織流程建設部分中提到,要“注重引進和培養金融、科技、數據復合型人才,重點關注數據治理、架構設計、模型算法、大數據、人工智能、網絡安全等專業領域”。
對金融核心場景分布式數據庫的發展,中國人民銀行、銀保監會等行業主管部門在金融監管政策方面給予明確指引,從整體方向上對技術架構、實踐、客戶交付等方面都進行了全方位的指導。
金融業務發展對技術架構的要求
近年來,銀行業在內外部金融環境的快速變化中持續進行轉型和發展,從零售轉型到互金 / 直銷以及多渠道豐富金融產品的興起,從追求業務多元化到追求場景化創新,基于持續不斷的技術發展、業務創新積累下,再到金融數字化轉型深入推進,這些對金融系統的技術架構有了更為嚴格的標準和要求以及訴求。
面對此背景和發展的時代,我們首先要滿足高可用,這是銀行或金融業對技術架構最基本的要求,在此基礎之上要滿足交易高頻高效、低延遲的金融場景處理要求,再衍生到高吞吐能力。因此,需要首先從性能的角度切入,來考慮如何在實時高頻的交易下保證數據吞吐能力和處理能力、統計與分析能力,當單機性能已達到一定瓶頸,這就需要引入分布式、數據切分等概念。在銀行業務多元化背景下,數據關聯度和復雜度更高,這對數據庫的技術架構和應用設計提出了新的挑戰,包括數據的模型、主題設計、建模、業務模型關聯、數據庫適應性、統一的運維管控平臺和版本的在線分布等技術業務關鍵能力。
當前,在場景化創新和數字化轉型的趨勢下,國際形勢以及外部金融環境背景下,安全可控成為不斷強調的關鍵詞。在此背景下,要求實現多中心多活的可控性,包括 OLTP、OLAP 場景以及 HTAP 混合場景(金融業務系統 TP、AP 場景混合的系統較多,很難單一劃分)。同時在分布式技術架構下,運維成本、運維難度也是一項巨大挑戰,那么智能運維就成為必要條件。此外,在保證高性能、高可靠的情況下,還要從架構、開發、設計等角度推動產品做到低風險。
總而言之,在銀行業務和需求發展的背景下,技術架構高要求、技術棧多樣性專項化、功能細化性、架構復雜度、管理等維度的要求也逐級提高。
金融業系統技術與架構的發展趨勢
金融業系統技術架構從廣義架構層面經歷了三個階段:
單體架構:計算處理能力有限,但在代碼或場景層面融合地比較緊密,高耦合度,運維即使不依賴體系化工具與管理也依然較簡單。
集群架構:擁有了一定解耦能力,業務與技術的需求變化響應較單體架構有一定優勢,同時也帶來了設計、開發、運維的輔助化工具和管理能力,具備一定的自主可控與研發能力。
分布式 / 微服務架構:趨勢之下,軟件層轉向全面自研的道路。引入分布式的技術本質是為解決高吞吐難以支撐的問題,但也引入了新的問題,總體而言要解決兩方面的問題:一方面,我們要解決大數據吞吐量下的性能提升。以銀行轉賬中最簡單的業務場景為例,實現平均 150 毫秒的響應速度,在大數據量下對數據庫自身、SQL 各類場景執行的要求非常高;另一方面,在上述場景的基礎上依據業務設計,進行垂直 / 水平的切分以及業務之間數據關系使用和同步,這就需要進行一定的設計取舍。本質而言,就是利用有限的資源,或者說虛擬化、云化后的資源,來保證業務的擴展性和高吞吐能力,自然會產生一定的損耗。如何平衡性能和損耗,這也是我們當前結合業界經驗以及技術發展的前瞻性需要解決的問題。
因此,雖然當前的架構做到了松耦合和強擴展性,但對高并發能力以及對金融行業的適應能力反而要求更高。
轉載請在文章開頭和結尾顯眼處標注:作者、出處和鏈接。不按規范轉載侵權必究。
未經授權嚴禁轉載,授權事宜請聯系作者本人,侵權必究。
本文禁止轉載,侵權必究。
授權事宜請至數英微信公眾號(ID: digitaling) 后臺授權,侵權必究。
評論
評論
推薦評論
暫無評論哦,快來評論一下吧!
全部評論(0條)