
導(dǎo)讀
TiDB 助力廣發(fā)銀行在 2024 年 10月正式上線新零售信貸業(yè)務(wù)管理平臺(tái),成功把數(shù)據(jù)庫從原 IBM DB2 遷移到 TiDB 分布式數(shù)據(jù)庫上。這也是繼總賬系統(tǒng)后,TiDB 在廣發(fā)銀行成功上線的又一重要系統(tǒng)。
TiDB 憑借其彈性水平擴(kuò)展能力和 HTAP (混合事務(wù)/分析處理)功能,能夠有效應(yīng)對(duì)零售信貸業(yè)務(wù)的混合型復(fù)雜業(yè)務(wù)場景,解決傳統(tǒng)數(shù)據(jù)庫的擴(kuò)展性和架構(gòu)復(fù)雜性問題,提升了系統(tǒng)的穩(wěn)定性和處理效率。通過精細(xì)的遷移方案和高可用架構(gòu)設(shè)計(jì),廣發(fā)銀行確保了零售信貸系統(tǒng)的高效運(yùn)作和數(shù)據(jù)一致性,為未來的業(yè)務(wù)擴(kuò)展奠定了堅(jiān)實(shí)基礎(chǔ)。

零售信貸業(yè)務(wù)涵蓋了聯(lián)機(jī)交易、報(bào)表業(yè)務(wù)和批量處理等多樣化業(yè)務(wù)類型,是一個(gè)典型的混合型復(fù)雜業(yè)務(wù)場景。面對(duì)傳統(tǒng)集中式數(shù)據(jù)庫在擴(kuò)展性上的局限,業(yè)內(nèi)普遍將業(yè)務(wù)部署在多套獨(dú)立的集中式數(shù)據(jù)庫上,這種做法引發(fā)了數(shù)據(jù)冗余、架構(gòu)復(fù)雜性增加和數(shù)據(jù)實(shí)時(shí)性下降等問題。
為了解決這些問題,廣發(fā)銀行的新平臺(tái)數(shù)據(jù)庫需要具備強(qiáng)大的水平擴(kuò)展能力和 HTAP(混合事務(wù)/分析處理)功能。經(jīng)過細(xì)致的調(diào)研和評(píng)估,銀行最終選擇 TiDB 作為零售信貸業(yè)務(wù)管理平臺(tái)的數(shù)據(jù)庫解決方案:
- 彈性水平擴(kuò)展:TiDB 的原生分布式架構(gòu)提供了彈性的水平擴(kuò)展能力,允許根據(jù)業(yè)務(wù)需求靈活調(diào)整計(jì)算和存儲(chǔ)資源,以適應(yīng)不同遷移階段的資源配置需求。
- HTAP 能力:作為一款原生 HTAP 數(shù)據(jù)庫,TiDB 集成了行存和列存引擎,并實(shí)現(xiàn)了物理隔離。這種設(shè)計(jì)使得 TiDB 能夠通過統(tǒng)一的計(jì)算引擎,根據(jù)不同業(yè)務(wù)請(qǐng)求靈活調(diào)度相應(yīng)的存儲(chǔ)引擎,有效減少數(shù)據(jù)冗余,顯著降低系統(tǒng)開發(fā)復(fù)雜性,并提升 7*24 小時(shí)系統(tǒng)運(yùn)行的穩(wěn)定性。
通過采用 TiDB,不僅提升了零售信貸業(yè)務(wù)的效率和穩(wěn)定性,還為未來的業(yè)務(wù)擴(kuò)展和技術(shù)創(chuàng)新奠定了堅(jiān)實(shí)的基礎(chǔ)。


本項(xiàng)目涉及到多套 DB2 數(shù)據(jù)遷移到 TiDB 的實(shí)施,因此需要合理規(guī)劃一套投產(chǎn)前和切換當(dāng)天的數(shù)據(jù)遷移方案,結(jié)合投產(chǎn)計(jì)劃和業(yè)務(wù)數(shù)據(jù)的改變特性,設(shè)計(jì)了 T+5(T5) 和 T+0(T0) 兩個(gè)階段,T5 完成全量數(shù)據(jù)的提前同步和校驗(yàn),T0 完成 T5 階段與切換之間的增量數(shù)據(jù)同步和校驗(yàn)。每批次的遷移流程包括:導(dǎo)出、導(dǎo)入、數(shù)量比對(duì)、字段比對(duì)、規(guī)則校驗(yàn)、健康值核驗(yàn)、業(yè)務(wù)報(bào)表核驗(yàn) 7 個(gè)步驟,流程圖如下:

遷移流程詳解:
- 規(guī)則配置:預(yù)先設(shè)定數(shù)據(jù)導(dǎo)入、調(diào)度和校驗(yàn)規(guī)則,明確導(dǎo)出和校驗(yàn)的數(shù)據(jù)內(nèi)容。
- 數(shù)據(jù)導(dǎo)出與存儲(chǔ):從源庫導(dǎo)出 T5 全量數(shù)據(jù)和 T0 增量數(shù)據(jù),存儲(chǔ)于 NAS 數(shù)據(jù)緩沖區(qū)。
- 數(shù)據(jù)訪問:利用 HIVE 通過外表方式訪問 NAS 中的數(shù)據(jù)緩存。
- 數(shù)據(jù)加載:使用 Lightning 工具將 NAS 中的數(shù)據(jù)高效加載至目標(biāo) TiDB 數(shù)據(jù)庫。
- 數(shù)據(jù)校驗(yàn):通過 Spark 結(jié)合預(yù)定義的校驗(yàn)規(guī)則,對(duì) TiDB 數(shù)據(jù)與 DB2 及導(dǎo)出文件進(jìn)行七步校驗(yàn)流程,包括數(shù)量比對(duì)、字段比對(duì)、規(guī)則校驗(yàn)、健康值核驗(yàn)和業(yè)務(wù)報(bào)表核驗(yàn)。特別地,利用 Spark 的緩存特性,在校驗(yàn)過程中無需中間落盤,直接輸出比對(duì)結(jié)果與失敗樣例,快速識(shí)別并定位數(shù)據(jù)錯(cuò)位、丟失或格式問題。
遷移成果:整個(gè)遷移流程的嚴(yán)密設(shè)計(jì)和執(zhí)行,保障了系統(tǒng)的順利投產(chǎn)。在不影響原有業(yè)務(wù)系統(tǒng)運(yùn)行的前提下,T5 階段的全量數(shù)據(jù)遷移和校驗(yàn)在線上完成。T0 階段的增量數(shù)據(jù)遷移和校驗(yàn)僅耗時(shí)約 20 分鐘。
通過精心策劃的數(shù)據(jù)遷移方案,不僅確保了銀行的業(yè)務(wù)連續(xù)性和數(shù)據(jù)的一致性,還為零售信貸業(yè)務(wù)的未來發(fā)展奠定了堅(jiān)實(shí)的數(shù)據(jù)基礎(chǔ)。

針對(duì)零售信貸新平臺(tái)業(yè)務(wù)需求,銀行采用了 TiDB 三地三中心高可用架構(gòu),使用 TiCDC 完成跨中心數(shù)據(jù)高可用。整體架構(gòu)采用存算分離的松耦合架構(gòu),存儲(chǔ)引擎同時(shí)配置行存和列存兩種引擎。應(yīng)用采用同城雙中心部署的高可用架構(gòu)。

? 主機(jī)房主集群采用單機(jī)多實(shí)例部署模式,數(shù)據(jù)為 3 副本高可用架構(gòu),每個(gè)副本一個(gè)獨(dú)立機(jī)柜,實(shí)現(xiàn)機(jī)柜+服務(wù)器級(jí)的高可用容災(zāi)方案,前端借助 F5 實(shí)現(xiàn)應(yīng)用到數(shù)據(jù)庫之間的高可用負(fù)載均衡鏈接。
? 備機(jī)房備集群部署架構(gòu)同主集群,部分應(yīng)用連接到備集群執(zhí)行。當(dāng)主機(jī)房異常時(shí),可快速切換到備集群運(yùn)行,承載全業(yè)務(wù)流量。
? 異地災(zāi)備集群為最小規(guī)模配置,達(dá)到遠(yuǎn)程災(zāi)備的容災(zāi)高可用能力。

該系統(tǒng)自上線以來,所有應(yīng)用服務(wù)持續(xù)正常運(yùn)行,系統(tǒng)基礎(chǔ)設(shè)置運(yùn)行穩(wěn)定,實(shí)現(xiàn)了 100%的成功率。TiDB 在整個(gè)方案中承載零售信貸新平臺(tái)的數(shù)據(jù)基礎(chǔ)底座能力,實(shí)時(shí)支撐業(yè)務(wù)系統(tǒng)的 7*24 小時(shí)在線業(yè)務(wù)、夜間跑批和報(bào)表查詢。TiDB 為行方零售信貸系統(tǒng)帶來的收益如下:
?解決業(yè)務(wù)痛點(diǎn):新一代信貸平臺(tái)在 TiDB 分布式集群內(nèi)部僅用 1 套數(shù)據(jù)庫,幫助信貸業(yè)務(wù)實(shí)現(xiàn)松耦合結(jié)構(gòu),解決了存量 DB2 數(shù)據(jù)分散和孤島問題;
?核心性能提升:新平臺(tái)利用 TiDB 的 HTAP 能力,顯著降低了整體批處理時(shí)間,較原系統(tǒng)減少近 2 小時(shí)。
?高可用容災(zāi)能力:新架構(gòu)采用 TiDB 的原生分布式高可用性,超越了原系統(tǒng) DB2+PowerHA+共享存儲(chǔ)的局限,提供了更高級(jí)別的彈性和可用性。
?降本增效:通過 TiDB 替換原有的多套集中式數(shù)據(jù)庫,減少了數(shù)據(jù)冗余,為開發(fā)和系統(tǒng)運(yùn)維帶來了顯著的效率提升和成本節(jié)約。
?自主可控:全棧國產(chǎn)化技術(shù)棧的選擇,經(jīng)過嚴(yán)格測試和實(shí)際驗(yàn)證,確保了系統(tǒng)的成熟度和安全性。
?降低平臺(tái)切換的初期投資:利用 TiDB 內(nèi)置的遷移工具,平滑遷移了原有異構(gòu)數(shù)據(jù)庫的歷史數(shù)據(jù),有效降低了平臺(tái)切換的初期成本。
?彈性擴(kuò)展能力:TiDB 的存算分離架構(gòu),允許系統(tǒng)根據(jù)業(yè)務(wù)需求靈活擴(kuò)展,滿足不斷增長的業(yè)務(wù)需求。
TiDB 在廣發(fā)銀行零售信貸系統(tǒng)中的應(yīng)用,不僅提升了系統(tǒng)性能和可用性,還實(shí)現(xiàn)了成本效益和自主可控的目標(biāo),也為銀行的業(yè)務(wù)發(fā)展提供了堅(jiān)實(shí)的數(shù)據(jù)支撐。
熱門跟貼