近年來,數據庫領域圍繞集中式和分布式的路線選擇一直爭議頻頻;而對于數據庫改造進行的如火如荼的金融行業(yè)而言,在不同系統(tǒng)究竟應該如何選型數據庫是讓每個DBA都感到頭疼的問題。所幸,這一問題的答案終于要有定論了。
近日,北京金融科技產業(yè)聯盟正式發(fā)布了《金融行業(yè)開放平臺數據庫轉型白皮書》(下簡稱《白皮書》)。《白皮書》由北京金融科技產業(yè)聯盟牽頭,國內頭部銀行和數據庫企業(yè)參編,并獲得數據庫專委會“優(yōu)秀課題”及聯盟“十佳課題”,權威性和參考價值極高。《白皮書》最大的亮點在于,對于金融行業(yè)數據庫到底是走集中式路線還是分布式路線,給出了極具價值的選型建議,值得所有金融IT從業(yè)者們擇善而從。報告原文可在“北京金融科技產業(yè)聯盟”官方微信公眾號12月29日發(fā)布的消息文末獲取。
現狀調研:集中式數據庫成熟穩(wěn)定應用廣泛,分布式數據庫隨新興應用逐步推廣
《白皮書》通過調研指出,金融業(yè)數據庫中,集中式數據庫“以其較強的功能黏性、優(yōu)秀的系統(tǒng)穩(wěn)定性、良好的軟硬適配能力,目前在金融業(yè)的應用仍占據絕大多數份額”。而分布式數據庫因能“更有效支持高并發(fā)、海量數據、超高峰值,分布式數據庫在金融行業(yè)應用規(guī)模已經有明顯提升”。
這一結論和近兩年金融信息化研究所發(fā)布的《金融業(yè)數據庫供應鏈安全發(fā)展報告》與《金融業(yè)數據庫創(chuàng)新發(fā)展報告》不謀而合。據調查,2022年,金融行業(yè)集中式數據庫占比達到89%,分布式數據庫則為11%;而2023年分布式數據庫占比提升至17%。集中式數據庫技術方案發(fā)展早、相對成熟,更適合業(yè)務量適中的交易類業(yè)務場景,所以在金融業(yè)應用成效明顯;而分布式數據庫則能更有效支持海量、高并發(fā)、高吞吐量的新型金融業(yè)務應用系統(tǒng),進而逐步取得推廣。
《金融業(yè)數據庫供應鏈安全發(fā)展報告》(2022)金融業(yè)集中式數據庫占比情況
選型建議:金融數據庫改造優(yōu)先考慮集中式方案,存算分離架構受到關注
現代金融服務逐步從柜面向網上、移動響應式服務轉型,同時現代金融業(yè)務海量數據、高并發(fā)、實時處理等需求推動了新一代分布式數據庫的建設,《白皮書》中也提出各金融機構都在探索數據庫轉型的多種技術路線及推廣,分布式數據庫在金融行業(yè)應用規(guī)模已經有明顯提升。無論是集中式還是分布式數據庫架構,都要從業(yè)務需求出發(fā),進行合適的選型。
根據不同的業(yè)務《白皮書》列出了集中式和分布式兩種架構的比對:
可以看出兩種架構,各有優(yōu)勢。雖然分布式數據前幾年熱度較高,但是在實際落地當中還是存在一些問題需要解決。比如
1.運維成本高:
采用分布式架構可以實現更高的可用性和擴展性,同時也帶來冗余備份、網絡交互等方面的開銷,硬件節(jié)點使用規(guī)??焖贁U張為大型數據中心的節(jié)能減排和機房規(guī)劃帶來較大壓力。大規(guī)模分布式集群的系統(tǒng)復雜度呈指數級上升,必須具備與之適配的運維管理能力作為支撐。筆者了解到,部分大行在國產化后,之前的Oracle小機,分布式改造后,由于分布式數據庫的冗余,資源利用率低,2臺小機甚至需要50臺以上的分布式數據庫服務器,造成機房空間不夠用,在本地數據中心擴容的同時,還在西部/北部新建數據庫中心,來滿足日益膨脹的數據庫服務器。
2.應用改造難:
分布式改造不僅僅是數據庫的改造,同時需要業(yè)務進行配合。《白皮書》中提到,“為充分發(fā)揮分布式架構優(yōu)勢,應用層也需要投入更多的研發(fā)設計成本,一是需要進行合理的數據分片設計,通過高內聚低耦合的數據規(guī)劃,盡可能減少跨節(jié)點訪問;二是需要在系統(tǒng)架構設計中充分考慮節(jié)點故障的容錯及柔性事務的處理。”所以,分布式數據庫 “較適合數據可實現完美分片的業(yè)務”。筆者參與過某金融機構的分布式業(yè)務改造,分布式數據庫中的大表一般需要一個合適的分片鍵,比如用戶唯一ID作為分片鍵,但是如果涉及到查詢當日營業(yè)廳的所有流水業(yè)務,則需要跨服務器進行訪問,性能下降50%以上。所以需要對業(yè)務進行合理的改造。同時改造又需要業(yè)務廠商的參與。從北京金融科技產業(yè)聯盟的《分布式數據庫金融應用發(fā)展報告(2023)》報告中,我們同樣可以看出分布式數據庫改造的時間成本是巨大的。
最后,《白皮書》也給出了兩種架構的綜合成本:
當前金融行業(yè)存量數據庫以小庫為主,所以大部分業(yè)務可以適合集中式數據庫。
由此,結合集中式和分布式的特點,《白皮書》給出了選型的流程圖供金融機構進行不同業(yè)務的數據庫架構選型:
通過上圖可以看出,《白皮書》認為對于金融行業(yè)關鍵業(yè)務的數據庫,改造時還是以集中式部署作為優(yōu)先考慮的方案。未來,分布式/集中式并行發(fā)展將在金融行業(yè)持續(xù)存在,需針對具體應用場景對數據庫能力的需求和側重,選擇合適的數據庫產品。
值得一提的是,在集中式架構中,《白皮書》還定義了“存算分離架構”。集中式的主從多副本架構中,還存在一些挑戰(zhàn),比如本地盤數據重構時間長、存算資源不能靈活擴展、本地盤亞健康無法監(jiān)測問題。 隨著存儲能力的不斷提升,在通過存算分離架構,數據庫可“進一步實現副本縮減、容災、備份能力下沉,IO 縮減性能加速、并發(fā)查詢下沉等,進一步提升數據庫的可靠性與性能。”
存算分離目前已成為趨勢,近期發(fā)布的中國軟件協(xié)會發(fā)布的《中國軟件根技術發(fā)展白皮書(數據庫冊)》同樣指出了這個趨勢:國產數據廠商正逐步解決當前存算一體架構存在的問題。因此,新型存算分離架構正在迅速興起,未來 2-3 年有望成為基礎設施領域新的關注點,一些國產數據庫廠商將在這一領域進行優(yōu)化探索,數據庫由“存算一體”向“存算分離”、由一寫多讀向多讀多寫架構演進。
開放平臺數據庫轉型:三階十二步,軟硬協(xié)同是關鍵
《白皮書》從方案設計、遷移、投產三個階段,給出了開發(fā)平臺數據庫的具體轉型方法。
里面提到一個主要的轉型設計思想-“軟硬協(xié)同部署設計”。數據庫系統(tǒng)涉及服務器、存儲、網絡、操作系統(tǒng)、中間件等軟硬件組件,要充分協(xié)同各組件的特點及其能力,提升目標數據庫系統(tǒng)的整體能力。如何匯聚數據庫上下游產業(yè)鏈資源,快速建立起更加專業(yè)的技術支撐體系,打造更加完善的數據庫服務工具和解決方案,白皮書給出了一個很好的案例:
這個案例是工商銀行對標主機 DB2 和 Oracle 數據庫,通過軟硬件協(xié)同,提升性能,同時采用存算分離架構打破單庫容量瓶頸,實現彈性擴容,首創(chuàng)建成多集群多中心部署的高可用架構,滿足金融業(yè)務系統(tǒng)服務連續(xù)性要求。
1)通過多核并行、基于代價的分布式并發(fā)事務并發(fā)優(yōu)化和全鏈路并行編譯執(zhí)行等,實現了分布式查詢技術優(yōu)化,具備百萬級 QPS 能力;
2)通過計算存儲分離、存儲資源池化、在線彈性擴展等,具備PB 級海量存儲能力,良好的支撐了歷史明細類、報表等金融業(yè)務專題的海量數據處理需求;單庫數據量可以支持數十 TB,基本持平或超過傳統(tǒng)數據庫存儲支持容量
3)同城雙園區(qū)間通過存儲級復制實現增量數據強一致同步,異地園區(qū)間通過異步方式實現增量日志同步,同城RPO=0&RTO<180秒和異地 RPO<1 分鐘&RTO<10 分鐘的金融級高可用通力;
總體上,《白皮書》通過對當前金融業(yè)轉型的具體調研,給出了開放平臺數據庫方案架構的選型建議和具體方法,并結合落地實踐案例生動展示了開放平臺數據庫轉型應該采用的設計思想。更重要的是,這本書基于頭部廠商和金融頭部用戶的共識,給困擾金融行業(yè)多年的數據庫集中式or分布式部署路線做出權威結論,給更多DBA改造方案選型提供了重要理論依據。“道阻且長,行則將至”,各企業(yè)DBA及數據庫從業(yè)人員可以通過閱讀本《白皮書》,學習到開放平臺數據庫的創(chuàng)新經驗,共同推進金融行業(yè)的數字化轉型。
(免責聲明:本網站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網站出現的信息,均僅供參考。本網站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網站中的網頁或鏈接內容可能涉嫌侵犯其知識產權或存在不實內容時,應及時向本網站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網站在收到上述法律文件后,將會依法盡快聯系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。 )