歡迎光臨
我們一直在努力

獨家揭祕:民生銀行大資料體系架構設計與演進

文章摘要: 加入民生銀行之後負責大資料服務體系的資料開放平臺建設參與民生銀行大資料應用平臺建設、外部資料平臺建設、實時資料接收服務建設

近年來,隨著大資料與人工智慧相關技術的迅速發展,新技術逐步在全社會各行各業得到應用。銀行業作為一個高度資訊化的行業,首當其衝面臨著網際網路新技術應用的挑戰。民生銀行在2013年開始佈局分散式、大資料及人工智慧技術等領域,在全行鳳凰計劃的牽頭下,逐步的將新技術與我行發展戰略業務實施策略進行了深度融合,為金融科技銀行的發展奠定了紮實的基礎。

一、大資料簡介

大資料起源於網際網路,在2003年左右由Google釋出GFS和MapReduce論文為節點拉開了新技術應用的序幕,介紹了一種利用普通PC伺服器構建大規模分散式系統,來解決海量資料的儲存和計算問題。在此論文基礎上發展出來的Hadoop開源體系逐步成為海量數據處理的一種通用技術框架。2008年左右Hadoop技術被廣泛的使用在各個網際網路企業中,極大的推進Hadoop技術體系的成熟,隨著早期Single Point of Failure問題被解決,在MAP-REDUCE兩階段的計算模式上,誕生了更豐富的Spark、Flink等計算框架。2013年左右批量資料的計算模式逐步成熟,在需求的推動下網際網路開始進一步的攻堅實時資料計算領域。同年部分銀行開始嘗試引入Hadoop大資料技術。民生銀行作為銀行業第一批,在2013年從網際網路引入了大資料專業才人,啟動了Hadoop大資料體系化的建設。

新技術的應用首要是解決問題,提高資料使用的效率,降低資料使用成本,最終推動業務數字化、智慧化轉型。在大資料體系化規劃下,以服務使用者為目標,以解決問題為抓手逐步推動大資料技術落地。民生銀行大資料整體規劃如下圖:

圖1、大資料平臺體系規劃

在整個規劃的指導下,按照不同階段的主力需求,民生銀行大資料建設可以簡單分為三個階段:

第一個階段是面向客戶的線上儲存查詢階段:

銀行有很多面向客戶的資料,資料積累非常快也非常多,以流水資料為例,爲了保證系統服務質量,通常是縮短可查詢的週期,依託大資料的海量資料儲存能力,基於分散式體系構建了歷史資料管理平臺來滿足業務場景中海量資料的儲存和查詢服務需求。

第二個階段是離線的批量資料計算及智慧資料分析階段:

在2015年全面啟動鳳凰計劃建設後,各領域系統性的梳理了業務戰略和實施策略,配合鳳凰計劃中數字化戰略的落地,業務流程和模式中涌現出大量的批量資料加工計算和結果資料服務的應用場景。在這個階段根據數據流轉週期和服務場景,結合整體的資料管控需求,建立了企業級資料開發模型,逐步推動和完善了全行統一的資料服務中臺,先後為數十個業務場景提供資料支援。同時隨著資料中臺的成熟,原始資料的積累,基於資料的機器學習人工智慧分析等場景逐步涌現,爲了降低新技術的使用門檻,快速迭代場景下的機器學習演算法模型,在這個階段同步建設了視覺化的機器學習平臺,對接資料中臺,為個性化推薦、風險預警及運營多個領域內的細分場景提供服務能力輸出。

第三個階段是全面推動線上實時資料計算及分析階段:

隨著批量資料體系的成熟,業務場景對實時資料的需求迅速涌現,我行科技啟動了全面的實時資料體系建設,對實時風控和實時事件驅動的營銷和運營形成了全面的支撐。

通過三個階段,在支撐業務應用場景發展的同時,目前平臺層面已初步完成如下幾大平臺建設:

  1. 資料採集分析平臺
  2. Hadoop資料加工整合平臺
  3. 視覺化機器學習平臺
  4. 實時推薦引擎
  5. 資料開放平臺

圖2、大資料主要平臺檢視

在資料採集層通過行為資料平臺和外部資料平臺,豐富了整個資料體系。通過資料整合平臺(DC),打通以使用者為中心的全維度的資料檢視,為後續的機器學習和人工智慧應用提供了可行的資料基礎,通過視覺化的機器學習平臺完成資料與演算法的結合,由資料服務層統一管控輸出。

目前隨著大資料多個平臺的建設,為我行多個戰略級專案提供了全面的底層資料和模型能力輸出,包括支援了鳳凰計劃專案指南針預警專案、資料化平臺型授信決策變革專案、運營風險監控體系專案、新一代零售信貸體系、村鎮銀行等多個專案的建設。

二、資料採集平臺

背景及目標

銀行在過去的資訊化建設中,更多的注重是交易資料的積累,對使用者的使用偏好、瀏覽點選行為、停留時間等行為層面的資料較少涉及。隨著大資料的發展,通過對用戶數據的收集,整合,分析,挖掘,能夠很好的對使用者是誰,使用者從哪來,要到哪裏去等問題進行定義和解析。在交易資料的基礎上,對使用者行為資料和外部資料進行補充建設,有了這些資料,首先可以在我行的APP、網站以及ATM等與使用者密切相關的場景裡,提供更貼心,更優質的服務;其次對公司內部各個金融業務產品使用者體驗優化等方向上提供用戶數據反饋支撐。

行為資料採集及分析

圖3、行為資料平臺

從行為資料的採集、資料分析整合及資料應用三個方面統籌進行規劃和設計,完成了行為資料平臺(GD)的建設。資料採集部分作為整個專案的資料來源層,完成對使用者產生的原始行為資料的收集和儲存。資料分析部分作為GD的中間層,對收集來的使用者行為資料進行統計分析,大致可以得到三類資料,一類是反應應用整體運營情況的指標資料,第二類是反應使用者行為軌跡、地理位置軌跡等的使用者生命週期資料,還有一類是標識每一個微觀使用者的標籤資料。資料應用部分作為GD對外展示和服務層,一方面為實時推薦、精準營銷等應用提供資料支援,一方面通過後臺管理系統,供應用運營方進行檢視。

在資料採集層通過構建採集客戶端SDK,嵌入我行統一的移動開發框架Firefly以及前端開發框架Apollo中,結合無碼採集的技術能力運用,使得我行所有基於同一框架開發的移動端APP和Web網站天然具備使用者行為資料採集和分析的能力。

行為資料平臺自2015年上線到現在為止,已經接入了手機銀行、直銷銀行、樂收銀及客戶化運營等民生銀行大部分APP應用,對這些應用中的使用者的行為資料進行採集,2017年又增加了對網頁端行為資料採集的功能。目前每天採集的資料超過千萬條,累積的行為資料已經達到數十億條,通過大資料分析技術,對採集到的資料進行了報表統計和分析,已得到五類的統計報表資料,包括應用中使用者的新增數目、活躍數目、累計數目及使用者的裝置分佈、地域分佈、作業系統、留存情況、使用者瀏覽時長統計、點選事件統計及應用的錯誤統計等,目前進一步的在推動行為資料對營銷和風控的實時資料補充。

外部資料採集及分析

圖4、外部資料平臺

在啟動外部資料平臺建設之前,我行外部資料由各業務條線獨立規劃實施,各個技術團隊建設了自己業務領域內的外部數據鏈路及服務,形成了「煙囪」式的資料加工服務模式。隨著Hadoop大資料平臺的推進,2016年在統一外部資料管理及使用的思想下,啟動了外部資料平臺的建設,核心定位在於:負責所有外部資料的統一儲存、統一加工以及統一的查詢服務,要求支援海量的結構化、非結構化外部資料的引入分析能力。

外部資料平臺OMDS於2016年9月完成上線,目前已經整合接入包括徵信、工商、法院、公安、千里眼、百度、銀聯、世聯評估、行業分析、萬德財報等約二十種外部資料的統一管控和服務。

三、配置化的資料加工整合平臺

背景及目標

Hadoop資料整合平(DC)在行內大資料體系中承擔著承上啟下的角色,彙集各渠道的資料到大資料平臺,經過統一清洗、加工、治理,進而向上遊應用提供服務,從後臺走到中臺,直接、快速地嚮應用系統提供資料服務和大資料能力,發揮資料內在的威力。資料的獲取並不是目的,如何利用大資料平臺技術,實現資料的管理和資訊的加工提煉,並對上游系統提供各類資料支支援。針對這些問題和挑戰,DC從資料和技術兩個方面著手對平臺進行構建。

資料層次

圖5、DC資料層次

為方便資料的管理、加工和使用,DC將資料進行了分層:近源層和共性加工層,其中近源層為來自於MDS、OMDS、GD和EDW的原始資料,包含行內資料、外部資料、行為資料、分行資料和數倉資料。

近源層資料經過關聯、彙總和分析之後,針對上游應用的需求,進行資料共性加工,包括流水加工、應用統計、指標加工、標籤計算、風險領域和運營領域。

通過OpenFile(批量檔案服務)實現資料的訂閱管理,提供了近源層、共性加工層等資料的檢視、訂閱功能。

技術架構

基於上述資料架構及應用需求,DC從數據處理、任務排程、資料管理和開發輔助四塊進行平臺的建設,技術架構如下圖:

圖6、DC技術架構圖

1、 數據處理體系

資料的儲存、計算和分析為基於Hadoop生態體系,包括Hadoop、Spark、Inceptor、HBase等分散式計算及儲存框架,來完成資料的儲存、計算、分析整個生命週期。

數據處理自下到上包含資料獲取RouterIn、資料清洗(DataClean)、共性加工(SparkSql/Inceptor Sql)和批量資料訪問服務OpenFile。

通過Router實現不同資料平臺間的資料互動,遮蔽平臺間的差異,配置化開發,提升了開發效率,降低了人為失誤導致的問題,實現了資料的快速接入和分發。

基於Inceptor和SparkSql設計開發了資料共性加工模組DcCore和Dispose,實現了資料的快速加工,並支援模板式的配置開發,有效提升了共性加工的開發效率。

2、 任務排程體系

為實現排程批次輕量化,精細化資料依賴,避免批次等待,通過任務組織模組化,來實現作業排程的匯出與上線。

系統間的排程通過CPS,實現批量作業執行,系統內部排程通過moia聯動,可支援更小粒度的作業排程,實現了作業除錯的效率和靈活。

3、 開發輔助體系

開發人員需要對數據處理及任務排程單獨開發一系列的程式碼和配置檔案,人為操作不僅效率低,而且易出錯。通過輔助開發工具,可根據每個模組的規範,自動生成程式碼及配置檔案,並提供視覺化介面,提升開發效率,降低成本和風險。

支援的功能分為自動化建立、自動化校驗、排程管理、模型管理和後設資料管理。

4、 資料管理體系

資料管理體系建設目的是爲了降低運維成本,對源資料、加工資料、資料質量、作業執行進行統計分析,分析結果通過Web頁面展示以方便對系統及資料的檢視管理,並對於重要資訊進行監控告警,其核心模組包括資訊採集模組、資料質量管理、系統執行分析和監控告警。

DC的構建在民生銀行中起到承上啟下的作用,彙集了各渠道的資料,經過統一清洗、關聯整合,並對資料進行深層的分析挖掘,進而向上遊應用提供服務,從後臺走到中臺,直接、快速地嚮應用系統提供資料服務和大資料能力,發揮資料內在的威力。目前DC系統管理了近源資料5000餘項、共性加工資料800餘項,為包括風險領域、運營領域、移動互聯領域等8個領域,20餘個系統,50餘個場景提供資料或計算支援。

四、線上機器學習平臺

背景及目標

目前的機器學習技術,尤其是智慧演算法,具有很高的技術門檻,需要頂級專業團隊的持續投入,每個專案單獨去關注技術的變化並落地代價太高。模型研發實踐亟需一個統一的機器學習平臺,用以規範模型開發流程,封裝和簡化各類演算法的使用,支援多種多樣的資料預加工,提供和管理模型預測服務。最終滿足資料分析師、業務專家、軟件開發等不同角色的不同層次的模型研發實踐訴求。

機器學習平臺建設旨在:

  1. 基於Hadoop技術棧的平臺型環境,提供業內最新的模型演算法;
  2. 基於Hadoop技術棧的分佈式環境,支援超大規模的模型場景;
  3. 為一般模型研究人員提供便捷的基於運算元和工作流的圖形環境;
  4. 為高階模型研究人員提供全面的基於程式設計的模型開發管理環境。

機器學習平臺要能夠適配各種已有的資料來源,如傳統關係型資料庫,TeraData資料倉儲等,提供資料的各種視覺化探索及建模挖掘;並能對資料和模型基於角色進行完善的許可權管理;對於研究人員精心挑選除錯而來的模型,平臺能夠將其一鍵部署為線上服務,將經驗資料及時轉化為對未來的精準預測能力。

圖7、機器學習平臺功能架構圖

建設現狀

專案一期中建設了機器學習平臺系統核心模組,覆蓋了模型研發的主要流程,主要分為調研平臺和預估服務兩大子模組。海量樣本學習、高維特徵分析處理和自動特徵組合能力是其最大亮點,示意圖如下:

圖8、機器學習平臺系統基本示意圖

整個平臺主要通過網站互動式功能為使用者提供服務。模型生命週期內的幾個大的階段都已經封裝成運算元的功能模組,模型的研發過程就是在一塊「畫布」上,通過拖拽運算元,串聯模型研發的各個階段,繪製創意藍圖。如下圖所示:

圖9、拖拽運算元進行模型研發

對於訓練好的模型,平臺支援一鍵釋出為線上預測服務。從研發到服務,不再需要龐雜的程式碼與流程。只要對學習模型有概念,對於領域問題有好的創意。就能在拖拽之間,點選之後獲得一個高效能的,高可用的預測服務。就能實現業務決策的更加精確化、智慧化。

典型案例

平臺目前對接了以下幾方面的應用:

運營風險監控之可疑境外取現

運營風險監控之可疑境外取現場景,通過機器學習方法分析已掌握的可疑取現行為特徵,自動發現其中模式,從而更全面、更及時地發掘可疑取現賬號。經過頭腦風暴,我們抽取了銷卡/重開/換卡次數、開戶機構、交易地域/時段/頻率/金額、資金流入流出渠道/時間差、客戶基本資訊等特徵,精確率從~65%提升到了~90%,緩解了人工複覈階段的開銷。

零售風險申請反欺詐評分實驗

零售風險管理之申請/反欺詐評分實驗探索–結合信用風險和反欺詐兩方面,建立統一的小微反欺詐評分模型。期望通過機器學習平臺系統的新機器學習演算法和高維特徵處理能力使我行小微申請反欺詐評分模型的效果有比較明顯的提升和優化,提高對信用風險和欺詐風險的識別能力。通過對數TB的徵信、工商、裝置和客戶基本資訊加以聚合分析,抽取了近千個特徵欄位,特徵自動組合階段又發現了數十個高效特徵,再結合平臺內建演算法模型的 AUC 達到了0.9,KS值提升20%。

五、智慧化實時推薦引擎平臺

背景及目標

實時推薦引擎是我行大資料體系中面向應用場景建立的應用層面的通用智慧引擎,該引擎將大資料基礎平臺的多種底層資料產出系統,包括標籤系統、機器學習平臺、大資料平臺及實時資料平臺,通過應用場景連結起來,構建了具備實時推薦能力的資料服務層。實時推薦引擎的核心是實時數據處理體系以及機器學習推薦模型。實時推薦引擎的建設,為精細化的客群經營、個性化客戶服務提供了千人千面的支援,成為大資料能力落地、轉化為效益的重要環節。實時推薦建設的目標包括:

  1. 構建線上推薦系統,建設提供各場景的實時推薦服務的基礎能力;
  2. 打通使用者實時點選行為鏈路,將實時資料結合到線上推薦服務中;
  3. 打通機器學習平臺模型推薦結果,將模型結果資料融合到線上推薦服務中;
  4. 抽象使用者、產品資料模式,建設推薦層面規則引擎,支援業務策略靈活配置,並支援融合線上實時行為推薦結果以及機器學習批量模型結果等資料。

系統架構

從技術上實時推薦引擎分為資料加工體系和資料服務體系兩部分,通過Redis層來將兩部分連結起來。

資料加工上涉及到後端多平臺上的資料加工,在通用類資料加工上,包括了通過數倉平臺建立的集市層資料加工以及DC平臺完成的行為和外部資料標籤加工。這部分加工的資料作為客戶的屬性資料,灌入到Redis中供引擎層快速查詢和過濾使用。同樣在後端資料加工上,還涉及到演算法層面的資料加工,通過機器學習平臺完成客戶購買預測,將基於批量持有資訊的計算結果,通過T-1每日批量的模式推入Reids作為推薦結果集的資料來源之一。對於使用者實時點選的資料,通過GD的行為資料採集,推送到實時數據處理平臺上,通過流式作業計算線上實時的相關性矩陣,將使用者的實時行為通過協同過濾演算法體現到推薦結果中去。對於服務層,著重建設了核心的引擎(包括演算法引擎和規則引擎),使用者訪問將觸發引擎訪問Redis對應模組的資料,通過業務策略以及線上的演算法對各推薦結果備選集進行篩選和排序,最終給出最適合的結果。

圖10、實時推薦引擎

典型案例

手機銀行理財產品推薦

當前手機銀行上推薦的理財是基於客戶資產、持倉以及在售理財產品資訊,按照相應推薦規則計算得到,使用的資料維度少,靈活性較差。因此爲了進一步爲了提升客戶體驗,在手機銀行上實現個性化的理財推薦服務。

財富圈資訊推薦

以萬德的新聞資訊資料為基礎,依據客戶在我行的產品購買,交易行為以及上線之後的瀏覽行為等資訊,推薦符合客戶投資、閱讀偏好的新聞資訊,並且在推薦過程中對新聞的價值作出簡要判斷,以對客戶形成簡要的投資支援。

六、資料開放平臺

背景及目標

如何實現大資料價值轉化是其中非常重要的課題,從當前資料應用的趨勢來看,一是越來越看重資料的時效性,從資料分析到資料提供,都要求從離線走向線上;二是注重場景化,要求資料能夠靈活和快速地適配各類應用場景。為適應這樣的趨勢,大資料的服務層就必須設計相應的機制。場景化資料開放平臺從大資料服務的頂層設計出發,為統一服務出口,增強資料輸出規範,對外使用上提供統一的API服務閘道器,提供服務流量的匯聚點,為資料服務模型服務的共享和迭代提供可能。

在資料開放平臺中,API是資料基礎。在各類資料規範的指引下,對資料進行分門別類,維度切分後,以線上API的方式提供包括資料接入、資料供給等各類服務,供各應用場景實時、組合式呼叫。通過統一的開放閘道器實現服務接入、釋出、鑑權、訪問、統計和監控,實現資料安全與管控。

功能架構

資料開放平臺整體上包含管理網站和閘道器系統兩部分。管理網站負責API的接入、釋出、維護、監控,訪問統計數據的展示和API的訪問申請審批。閘道器系統是訪問API請求的統一出入口,負責請求的鑑權、訪問控制、流量控制、統計監控等功能。

圖11、功能架構圖

技術架構

管理網站將API資料、鑑權資料和訪問控制配置資訊等持久化到MySQL資料庫,同時將這些資料和配置資訊通過Zookeeper服務同步到閘道器系統。爲了實現對請求的靈活管控,閘道器系統針對黑名單、身份驗證、許可權校驗、流量控制等功能採用外掛化開發,且每個外掛均能動態開關。每個請求的處理日誌資訊通過非同步方式傳送到事件佇列,並由單獨的日誌收集程序進行收集,大資料實時計算平臺對收集的日誌進行分析處理將訪問統計數據儲存到資料庫供使用者檢視。

圖12、技術架構圖

建設現狀

資料開放平臺上的API服務分為客戶行為類、客戶資產類、行外資料類、基礎服務類等,其中基礎服務類中已經接入了實時資料接收API,該API用於接收各個系統實時資料供後續實時計算任務消費。已經開發完成客戶行為類API共16個、客戶資產類API共6個、行外資料類API共13個,OpenAPI平臺屬於初步完成建設,後續會有更豐富的資料服務API通過資料開放平臺對外服務。

總結

民生銀行大資料建設之路是一個配合業務場景需求反覆迭代前進的一個線路,發展到今天,從多個不同的平臺、模組逐步的形成了幾大體系:資料採集體系、資料服務體系、批量資料分析體系、實時資料分析體系以及智慧資料分析體系。對於資料服務體系,主體是整體規劃中提到的資料中臺演化而來,是資料業務化輸出的重要承載體。資料服務體系形成統一的資料服務目錄,由開放平臺層面的閘道器統一進行把控,通過場景化資料服務中臺對資料和模型應用進行服務化,為對數字化、場景化的業務轉型提供了堅實的底層支撐能力。

從左至右:郭安東、鄭偉偉、劉小林、羅京、何鵬、周禮、潘廣進、孫海峰、田玉成

何鵬(左五),中科院自動化所計算機碩士,10餘年大資料行業經驗,先後在搜狗、人民搜尋負責大資料相關建設,2013年加入民生銀行組建團隊並推動民生銀行大資料應用體系建設,先後規劃推動大資料五大體系多個平臺建設。目前重點關注並推動大資料技術及人工智慧技術與業務場景的深度結合,探索銀行改革轉型下的資料驅動之科技實施路徑。歡迎聯絡(微信zxttlook)加入民生探索之路。

周禮(右四),清華大學計算機本碩生,先後在網際網路、銀行IT部門承擔技術開發工作,在J2EE、分散式、大資料方面有多年經驗。2013年加入民生銀行後負責推動大資料應層多個平臺建設,現主導大資料實時體系重要系統建設。

羅京(左四),西安交通大學計算機碩士,2014年加入民生銀行,先後負責並參與我行多個大資料應用平臺建設,現主導大資料服務體系的建設。

劉小林(左三),武漢大學計算機碩士。喜歡研究分散式系統、資料庫、作業系統等系統級知識。曾經就職於百度廣告變現部門。加入民生以來先後負責機器學習平臺、交易網路分析、深度學習等多個專案建設,現探索人工智慧應用實踐,主導大資料智慧分析體系下重要平臺建設。

田玉成(右一),北京郵電大學計算機碩士,16年5月加入民生銀行大資料平臺開發團隊,主要負責外部資料平臺的開發與交付工作,同時參與客戶畫像刻畫、個性化推薦、全景運維等專案建設。現在主要負責實時推薦模組建設。

鄭偉偉(左二),北京郵電大學計算機碩士,2012畢業於北京郵電大學。2015年加入民生銀行資訊科技部,參與民生銀行大資料應用平臺建設、外部資料平臺建設、實時資料接收服務建設,移動運營資料平臺及客戶標籤體系建設。現主要參與實時資料體系下專案建設。

潘廣進(右三),計算機碩士,2017年2月加入民生銀行,先後在搜狗、工行從事大資料相關工作,加入民生銀行後主要負責批量資料體系建設,負責Hadoop資料整合平臺、外部資料平臺等多個平臺建設,現主要負責批量資料體系下重要基礎模組建設。

孫海峰(右二),2017年2月加入民生銀行,之前在人搜、金山雲等網際網路公司負責HBase、塊儲存等分散式儲存系統的研發工作,加入民生銀行之後負責大資料服務體系的資料開放平臺建設。

郭安東(左一),北京郵電大學計算機碩士,2017年7月加入民生銀行大資料平臺開發團隊,前期主要從事流水分析相關工作,現主要參與場景化資料服務中臺的建設。

未經允許不得轉載:頭條楓林網 » 獨家揭祕:民生銀行大資料體系架構設計與演進