2018年云棲ATEC金融科技開放峰會上,螞蟻金服重點發布了新產品“金融數據+智能套件”,該套件包含金融計算引擎、數據智能中臺、智能應用等組件,整合了許多世界級數據處理與智能分析能力,包括國內首個金融級圖數據庫GeaBase、實時計算引擎,以及領先的視覺識別、數據智能能力,有效解決過去銀行數據分析決策困難、迭代周期長等數據智能困局。
今天,我們將重點介紹其中的關鍵組件——金融級圖數據庫GeaBase,它有效解決了海量復雜關系數據的離在線查詢和分析。
試想一下,在金融場景中,數據的組織方式本質上很多是以關系圖譜的方式存在的。在數字金融時代,銀行獲得了場景后,如何發現數據關聯進行決策?
一般的在線查詢使用關系型數據庫,但是,關系型數據庫不能很好地反應數據之間的內在關聯;同樣,傳統的基于大數據的深度學習算法,依靠統計學原理對模型進行訓練,并沒有考慮數據和數據之間的內在關系。所以,螞蟻開發了基于圖推理的引擎,為深度學習等支持上層業務的應用搭建計算存儲基礎,打造更完整的金融大數據鏈路。
GeaBase是螞蟻金服完全自主研發的新一代金融級實時分布式圖數據庫,能夠實現對超大規模關系網絡毫秒級的復雜查詢及變更,支撐螞蟻金服風險控制、資金關系等多個關鍵應用場景,并都達到百億個節點,千億條變量的海量數據規模,為螞蟻金服的眾多業務提供風險控制、反洗錢、反套現、金融案件審理和智能營銷推薦等保障和服務。
GeaBase歷經三年自主研發,團隊持續擴大,并吸引眾多海歸工程師。目前GeaBase不僅支持了螞蟻金服越來越多的高并發、低延時的業務場景,而且也被廣泛應用于阿里巴巴集團的其他業務場景中。
下面,通過對螞蟻金服計算存儲首席架構師何昌華、螞蟻金服基礎技術部圖計算及存儲技術團隊等的訪談,我們一起來了解一下GeaBase,以及透過它,我們可以看到的未來金融數據智能藍圖中圖分析能力的力量。
GeaBase在螞蟻金服的實踐
圖數據庫基本含義是以“圖”這種數據結構存儲和查詢數據。它起源于圖理論,數據模型主要是以節點和關系(邊)來體現,它的優點是快速解決復雜的關系問題。圖數據庫在金融行業中有非常廣泛的應用,比如反欺詐。
我們都知道,大數據應用讓很多企業機構在這個數字經濟時代享受到優勢。而由于用戶、系統和傳感器產生的數據量呈指數增長,數據內部依賴和復雜度增加等發展因素,許多需要連續兩次甚至更多join以上的數據查詢場景在互聯網行業應用中誕生,傳統關系型數據庫、大數據算法無法滿足日益增長的數據處理要求。
除此之外,在實際發展中,隨著關系型數據庫使用場景的不斷擴大,也暴露出一些它始終無法解決問題,其中最主要的是數據建模中的一些缺陷、以及在大數據量和多服務器之上進行水平伸縮的限制。在應對這些趨勢時,關系數據庫產生了更多的不適應性,從而導致大量解決這些問題中某些特定方面的不同技術出現,其中,圖數據庫成為了NoSQL中關注度最高、發展趨勢最明顯的數據庫。根據db-engines統計,圖數據庫過去幾年在市場的發展呈現出快速增長的趨勢。
有人說如果傳統關系型數據庫可以比做火車,圖數據庫則相當于大數據時代的高鐵。如上述所指,隨著大數據應用越來越廣泛,人們逐漸開始關注到,如何在巨大的關系網絡中快速發現有價值的信息,成為了未來數年大數據領域的一大挑戰。
“比如在資金關系網絡中,如果我們發現資金的流動形成一個閉環,這就很可能是一個洗錢行為的訊號。”付志嵩介紹道。付志嵩是目前螞蟻金服圖計算及存儲技術團隊高級專家,他2015年加入螞蟻金服,作為主要架構設計和研發人員參與了實時分布式圖數據庫GeaBase的開發,實現了對超大規模關系網絡毫秒級的復雜查詢及變更。目前團隊的主要職責是研發新一代的分布式圖數據庫和圖計算產品。回國之前,付志嵩服務于美國圖數據庫公司BlazeGraph,領導了分布式圖計算系統的設計和開發。
他介紹,此前全球主流商用圖數據庫完全由國外商業公司壟斷,導致我國在技術上無法自主可控,而且這些商用圖數據庫在擴展性,易用性,性能上都無法滿足金融大數據的需求。這些挑戰體現在:
1、海量數據的現狀;
2、高并發、低延時的在線查詢;
3、金融業務場景復雜,需要一套靈活可擴展的查詢語言,支持不斷迭代的場景;
4、需要適配不同數據源和數據導入方式;
5、需要高可用及多種容錯機制;
6、考慮用戶使用體驗,產品化過程必須要有簡單的經營流程。
GeaBase為螞蟻金服自主研發,針對自身面臨的海量數據規模、復雜網絡和大規模實時計算的需求,經過兩年多的發展,通過采用新的架構設計和算法,滿足了螞蟻金服自身金融場景的特點和需求,在螞蟻金服眾多業務場景中,取得了非常好的效果,實現了高可用、高穩定性和可用性、高性能和實時更新的性能優勢。
值得一提的是,我們也知道,螞蟻金服還自主研發了取代商業數據庫的OceanBase。總的來說,螞蟻金服使用關系型數據庫、圖數據庫以及圖計算,三者各自對應不同場景。從技術實現層面講,螞蟻金服的圖數據庫主要有兩大應用場景,一是在線查詢,該部分主要包括實時風控、實時營銷等,這些場景可統稱為實時決策,螞蟻金服需要在短時間內迅速做出決策,比如某筆轉賬是否為洗錢或者賭博;二是離線計算,以及知識圖譜等。
這些問題都可通過圖數據庫解決,但并不能完全解決所有問題,比如機器學習圖模型、分析型反欺詐模型等,在線查詢局限在固定范圍內讀取數據,可保證低時延響應。但是,當計算需要全圖迭代時,在線查詢性能非常差,離線計算可以很好解決全圖迭代問題。
總結而言,螞蟻金服解決方案GeaBase(Graph Exploration and Analytics)集合了在線查詢與離線計算兩大能力,是一個一站式大規模分布式圖處理平臺。GeaBase的設計目標主要是兩大應用場景,一是高并發低延時在線查詢場景,二是全圖迭代的離線計算場景。主要提供四大功能,一是數據CRUD,增刪查改操作;二是查詢FLWOR;三是在線分析,比如風控中使用較多的找閉環;四是離線操作。
GeaBase:助力未來金融數據智能
隨著螞蟻金服圖數據庫解決方案GeaBase,以及更多計算存儲技術的開放,金融科技領域,將因金融數據智能能力的提升衍生出更大的想象空間。
螞蟻金服計算存儲首席架構師何昌華,加入螞蟻后,帶領團隊研發并上線了螞蟻實時智能決策系統,著力于解決端到端秒級數據實時性,線下模型訓練和線上決策數據一致性,以及業務智能化門檻高和開發周期長等問題。目前,他聚焦于新一代數據技術架構以及金融級計算的自主研發,圖數據庫解決方案GeaBase,是其中的一環。
在加入螞蟻金服之前,何昌華先后在Google搜索架構部門、Airbnb等公司工作,專注于大規模的分布式系統及大數據架構與智能應用。
他表示,在過去的十幾年里,螞蟻金服打造了安全流暢的支付交易鏈路,而金融計算存儲,更多的是指底下一層的大數據鏈路,包括用戶怎么使用支付寶、產生了哪些交易等,并從中提取出更多邏輯關聯,如前文所述,輔助反欺詐、風險控制、智能推薦等各個場景的決策,幫助交易的安全和體驗提升。
我們可以看到,金融科技發展到今天,我們很好地解決了連接的問題,但數字金融的含義遠不止于此。無論是體現在風險控制、宏觀經濟研究,還是金融產品設計與銷售等環節,在AI、物聯網等技術的幫助下,數字金融還將迎來更廣闊的空間。何昌華指出,AI未來將是金融行業的核心競爭力之一,今天螞蟻金服的極大部分業務也都基于AI來展開。回顧過去,大規模深度學習大約在五年前開始興起,這主要也是因為數據的爆炸性增長以及分布式計算能力的提升。未來假設在某個場景,基于同樣量級的數據、同等成本上,如果能夠進行比別人更多更快的計算,那就會在競爭上產生優勢。
此前,螞蟻金服通過“BASIC”開放戰略,在金融領域構建了一個自底向上的全棧式架構,從具有金融級別支撐能力的分布式計算平臺等底層技術,到人工智能、區塊鏈等為代表的應用技術,再到以智能風控、生物核身等金融級專有技術,形成了完整的技術堆棧,以建立與金融機構更多層面的緊密連接,助力金融機構打造更開放、多樣、靈活的生態連接。面對未來的趨勢,眾多金融機構因此在數字化轉型路徑中,將構建數據智能中臺作為重中之重。
而構建一個能夠貫穿整個金融機構的大數據中臺后,隨之而來的是發揮數據在業務和技術中承上啟下的作用。用何昌華的話來說,“單位成本更低更易用的大規模計算能力,將成為未來金融行業的核心優勢,這就是我們定義的新計算,希望全力打造的核心地帶。”
何昌華透露,在打造這條基礎計算的鏈路中,GeaBase現在提供的不僅僅是一個圖數據庫,而是作為整個圖數據計算的大底盤,在它上面我們可以進行更多高效圖計算,從而更好地支持業務。“它不在支付系統里面,它布局在許多底層的數據處理系統中,最后在數據上提煉出一層知識,然后再提煉一層,最終形成實時智能決策能力,來支持支付,以及各類金融屬性的業務。”
存儲、架構、算法:實時圖數據庫的誕生
回憶起圖數據庫研究的起源,研發團隊表示,面對互聯網時代的海量數據,以及背后的知識圖譜,“大家慢慢地回過頭來看,發現這個任務用‘圖’表示最好,能夠非常清晰地表示出點和點、實體和實體之間的關系。”
但回顧起圖數據庫研究領域的起源,研發團隊表示,從一開始,螞蟻金服的思路和市場上的圖數據庫就不一樣,螞蟻金服決定做的方向,是分布式的圖數據庫。
老一代圖數據庫,可以理解為是單機版的,這也是其很難適應數據爆發時代的需求的原因。舉個例子,如果用圖表示大量的數據,涉及的是數百億的點、數千億的邊,這樣的話,單機上是肯定放不下的,“在海量的數據挑戰下,慢慢地就開始出現分布式的‘圖’。”
但這個時候,圖數據庫的雛形還不算真正建立。設想一下,在多臺機子上做圖計算,面臨的最大挑戰就是,傳統的算法幾乎失了效。這個時候就必須創造新的算法來完成分布式圖計算。
所以,在整個互聯網科技行業中,有了后來Google研發分布式圖計算框架Pregel,開啟了在分布式圖上做算法研究的先河,比如典型的算法PageRank。但是,GeaBase研發團隊指出,這些研究方向適用于離線場景,而螞蟻金服應對的是大規模金融業務要實現實時決策的挑戰,需要面對“百億個節點萬億條邊的超大規模,并且實時更新的關系圖進行高并發低延時的讀寫”。
金融的業務場景對于實時性的要求都很高,比如說在轉賬的時候,我們幾乎需要在這一瞬間判斷這一筆轉賬是不是有風險,要求響應速度非常的高,才能把錢在一秒之中轉出去。但在這個過程中除了風險控制之外,還有很多其他的操作,真正留給風控來檢查的時間大概也就兩百毫秒左右,在這兩百毫秒內我們要做規則的判斷、數據及其特征的提取及最終判斷這筆轉賬的風險,所以每一個毫秒我們都要盡力爭取。
為應對獨特的業務需求,螞蟻金服從2015年開始研發新一代金融級實時分布式圖數據庫GeaBase(Graph Exploration and Analytics Database),并逐漸投入使用。根據測試,GeaBase在各方面的的性能達到了行業先驅圖數據庫Titan的四十倍到九十倍。
GeaBase第一次接受實際業務場景壓力測試,是在2016年的春節期間。“當時我們都加班在辦公室守著,火鍋年夜飯都開成流水席了。但成就感真的很高啊!”
GeaBase技術上的兩個“極致”
金融級的業務挑戰讓開發團隊在技術路線的選擇不敢有半點懈怠,投入了分布式圖數據庫的領域;而讓GeaBase走得更遠的,是背后追求極致的工程化精神。
機器性能壓到了極致
螞蟻金服計算存儲首席架構師何昌華指出,GeaBase實現了海量數據里高并發、低延時的在線查詢,但是,螞蟻金服的機器數卻是用得更少的。一般情況下,當規模上去以后,技術上也可以去用更多的機器去解決高并發難題。但螞蟻金服的做法并不是堆機器,而是把單機的性能壓到了極致,效率、成本上有明顯的優勢。
工程研發追求極致
GeaBase將圖數據庫從單機版做到了橫向擴展,但回憶起當年,團隊有兩名老員工,其中有一個覺得不靠譜,轉崗了,最后只剩下一個人,后來才重新招了很多人。“反正大家都覺得沒信心。”
在我們當時做的時候,目標之一就是我們一開始就做分布式的,因為這種數據量級單機是不可能hold住的,一定是橫向擴展、分布式的。但我們決定自己做的時候,連自己團隊的人,他們都認為這個東西不可能做的成功,因為市場上已經有了相關圖數據庫產品,它給人們對圖數據的認知已經定格。但是這個東西都沒有辦法能夠達到我們對OLTP的需求,比如說幾十毫秒的訪問的延時,以及高并發的訪問。當時我們就決定自己做,但當我把架構設計思路和團隊講了之后,連團隊自己內部的同學都覺得不可行,都對這個事情失去了信心。
大家覺得這怎么可能呢?這怎么能做到呢?當時都是這么想的。
其實,這些想法可能跟我在硅谷的經歷有關系,很多時候我會對coding,或者性能要求會很嚴格。在國內,由于業務導向的原因,大多數開發者是把功能做出來,但是對于實現的方法上并沒有那么關注。做業務,可能晚一個禮拜出來,這個市場就沒了。但是做基礎技術研發不一樣,做基礎技術研發的話,如果能把它做到極致,我情愿追求極致,晚一點完成。
當時我就跟團隊說,不管你覺得可以還是不可以,我們現在就在做這個,一切后果我來承擔。后來就開始做,做出來的效果后來還不錯,大家就開始慢慢變得有信心了。現在團隊的凝聚力還不錯,也是因為大家覺得這個東西非常有做頭而且也是看到了未來方向之一。
這樣的嚴謹和極致,在實際運行中就體現出穩定性的優勢。“比如當時花了很多時間寫單元測試,但后續需要重構的時候,因為有了單元測試保護,就不會擔心重構后語義會和原來不一樣。這樣為后續打造的效率,節省下來的時間,遠遠超過一開始花的時間。”
走向開放的生態與能力共建
有很多人會覺得疑惑,會因為目前圖數據庫的應用領域有限,就質疑花這樣的代價去自研、去打造一個新興圖數據庫解決方案的價值。對此,何昌華表示,圖計算是一個廣義的領域,當前金融行業是其非常強的場景,螞蟻也因此而在圖數據庫有大量的投入,未來,隨著數字金融場景的驅動,圖計算、圖數據庫技術的價值也會被驗證,并逐漸發展起來。因為其實在金融以外的行業,同樣對圖計算有大量的需求。
“想象一下,未來的數字經濟時代,IoT時代,海量的數據之間也會有千絲萬縷的關系,圖計算技術也將投入到更多場景的服務當中。”
目前,GeaBase的能力已在螞蟻金服自身業務場景中得到驗證,未來,GeaBase也將以開放的姿態走向市場,與更多生態合作伙伴一起,助力更多金融機構推動普惠金融發展。
付志嵩透露,GeaBase公測產品已經在螞蟻金服|金融科技官網上線,團隊將把GeaBase解決方案打造成技術服務平臺進行開放,和更多企業機構、開發者合作共建更豐富的產品和服務、生態能力。