作為互聯網金融領域的先行者,成立于2009年底的阿里小貸發展初衷即是為淘寶和天貓上的賣家提供小額貸款業務,實現“讓天下沒有難做的生意”的目標。伴隨產品形態的豐富,服務對象的擴展,小貸業務增長迅速,平均每年增長速度在四到五倍左右。經歷了近5年的發展,已有超過36萬人從阿里小貸借款,最小貸款額為1元。
與傳統銀行不同的是,阿里小貸重塑了一套信用評價體系和信用概念,其小額貸款模式不需要抵押物,是純信用貸款。信用從何而來?來源于貸款者線上經營信用數據、財務數據等等,阿里小貸對貸款者在互聯網上積累的海量數據進行分析予以授信。數據成為阿里小貸業務模式的基礎,也是核心所在。究其根本,這是一筆數據生意。
這筆數據生意,從第一天起,就根植于阿里云計算飛天平臺之上。
數據驅動增長,掘金阿里數據
“3分鐘申請、1秒放款、0人工干預”,這是阿里小貸獨有的一套高效工作模式,這樣的高效有賴于其背后獨特的業務模式,它將是否放貸、貸款額度和風險評估等傳統銀行最為看重的業務環節完全交給了大數據處理平臺。阿里小貸數據倉庫的總共數據量十多PB。每天處理上PB的數據量,包括店鋪等級、收藏、評價等幾百億個信息項,運算上百個數據模型,甚至需要測評用戶對假設情景的掩飾和撒謊程度。最終用戶能否申請貸款、能貸到多少錢,完全依靠的是大數據平臺為其計算出來的信用值。這些無疑對大數據處理平臺的可靠性、安全性以及計算的準確性提出了極高要求,算錯一筆可能就會造成比較大的資金損失。
為了確保數據計算的準確性,阿里小貸要從各個層面去挖掘申請貸款的賣家或者消費者的信息,這個過程幾乎會用到整個阿里集團包括淘寶、天貓、B2B和1688等多個業務部門的數據,以及集團外部的社會征信數據。這也使得阿里小貸聚集了多個項目的技術骨干。其中,負責阿里小貸數據倉庫的基礎模型和基礎平臺建設的架構師陳鵬宇和負責早期運維工作的資深經理張國保就是項目中重要的技術負責人。近日,他們深入分享了阿里小貸技術演進歷程。
據他們介紹,小貸業務目前每天從外部同步過來的數據量上百TB。數據同步過來之后要經過小貸數據倉庫的三層加工,加工結果以指標(輸出模型要用到的離線變量)的形式傳遞到阿里集團的通用決策系統AGDS。通用決策系統能夠支持上萬種數據倉庫提供的離線變量,包括買家、賣家及店鋪交易等所反映出的眾多數據。此外,它還會從其他系統獲取一些實時信息,如賣家當前的交易情況、具體的處罰情況等,并結合這些實時數據和數據倉庫的離線變量動態計算賣家的風險程度和授信模型。因此,通用決策模型是小貸真正的業務引擎,其上大約有幾千條規則,可以理解成一條有幾千變量的公式,能算出賣家的最終授信模型。在放貸系統申請時,這個引擎就能告知它是否可以放貸、大約可以放多少錢等。這便是小貸依據數據計算做業務決策的整個過程,如圖1所示。
此外,阿里小貸的業務特點決定它對安全性和實時性也有很高要求。阿里小貸使用了多方數據,包括集團內部的數據以及其他合作伙伴提供的數據。這些數據都高度敏感,阿里小貸作為使用方有義務確保數據安全,因此對平臺的安全性有較高要求。而且發放貸款之后,要做好貸后監控。小貸通常會根據貸款人的網上行為數據,對其信用風險進行評估。這種評估做得越及時,就越有可能在出現異常時提前發出預警、挽回損失。而準確性、安全性和實時性等阿里小貸的核心業務特性都得到飛天平臺的有力支持。
根植飛天平臺,業務迅猛增長
由于阿里小貸的業務與數據相生相依,伴隨數據來源的廣泛增長,數據庫會越來越龐大,任何傳統數據平臺都沒有能力支撐這種業務模式,同時,前文提到的阿里小貸對準確性和安全性的嚴苛要求,當時業界并沒有成熟的解決方案,結合云平臺在存儲和計算方面可以提供的強擴展能力,阿里小貸成為“飛天”平臺的第一批用戶,并見證了飛天平臺的每一步成長(如圖2所示)。反過來看,也正是“飛天”這樣強大的云平臺,才能支持小貸平均每年四到五倍這樣近乎野蠻的業務增長速度。
2010年4月10日小貸業務第一款基于“飛天”的貸款產品--淘寶訂單貸款發布,只面向杭州地區提供服務。那時的飛天集群只有30臺服務器,小貸業務用了兩個集群,數據處理引擎是SQL Engine 0.2。兩個集群同時運行相同的業務,計算出結果后,需要人工將計算結果備份到另一個集群。同年9月,阿里小貸決定將業務開放到全國,然而在一切準備就緒時,發現當時的集群規模無法支撐那么大的計算量。這時,飛天團隊做了一件當時看起來很了不起的事,將集群規模從30臺擴展到100臺,SQL Engine 0.2升級成0.8版本,保障了阿里小貸在2010年11月順利將業務擴展到全國。
2010年底,阿里小貸的貸款模型由原來的兩個(授信和貸后預警)發展成十個。大家逐漸發現,要想支持這么多模型不能再采用煙囪式的方法,因為拿到數據后要走很長的加工鏈路,才能得出要用的指標。這時,需要有一個底層的公用數據庫,于是大家開始動手建數據集市。此時,又遇到了跟當初擴展全國業務一樣的問題,集群處理能力再次受到挑戰。飛天平臺再一次做版本升級,將數據處理引擎從SQL Engine 0.8升級成Data Engine 0.2,Data Engine 0.2有兩項重大突破:1.存儲壓縮,壓縮比可達到2~5倍;2.計算性能大幅提升。最終,集群規模瓶頸被成功突破,飛天為阿里小貸性能提升提供了足夠的存儲和計算能力。
隨著業務的發展,數據挖掘項目對阿里歷史數據的需求越來越大,有些項目甚至需要從2003年淘寶成立以來賣家的所有數據中去挖掘信息,這便對數據跨度和質量提出了很高的要求。于是,阿里小貸開始構建大型數據倉庫,但這無疑給飛天提出了更大挑戰,尤其是在穩定性方面一定要有所保證。ODPS的研發開始,將Data Engine與運行于云梯1上能支持1500臺服務器的莫邪合并,將莫邪作為ODPS的數據處理引擎。同期,飛天將集群服務器規模擴展到千級別。這時對阿里小貸來說,等于ODPS將飛天平臺包在了底層,主要由ODPS來對阿里小貸的業務提供支持。
2012年初,集團開始將數據魔方、淘寶指數、Tcif等重要業務從Hadoop集群遷移到ODPS集群上,從一定程度上解決了一直困擾阿里小貸的數據共享問題。此前,阿里小貸共享集團數據時大部分要到Hadoop集群去取,數據同步、上游數據復制、下游時間銜接等都有可能出問題,很難保障數據產出的質量和穩定性。
業務遷移完成之后,開始在ODPS集群上建一個集團的數據中心,也就是ODS層,專門匯總阿里各個業務部門的數據,然后在其上提供一個基礎的統一數據服務??偟膩砜矗瑢Ρ菻adoop,ODPS優勢很明顯:1.ODPS有一整套的數據隔離、授權模式特性,在數據的邏輯隔離做得很好,同時提供了多種權限管理策略:ACL、POLICY、LABE等,最厲害的是,在數據嚴格隔離的情況下支持混合計算--Protected模式;2.ODPS在數據計算和數據管理等方面的實用性功能更加豐富,在很多方面可媲美傳統的RDBMS,例如一些復雜的開窗函數查詢等;3.ODPS產品易用性較好,上手容易;4.在5K之后,ODPS集群的可擴展性理論上具備無限擴展的能力;5.ODPS支持多租戶模型,在數據、資源的分配和隔離等方面可以較為靈活地控制;6.性能和穩定性方面,雖然兩者相差不大,不同場景下各有優劣,但ODPS顯然走得更遠。
5K出現,平臺和技術走在業務前面
集團的ODPS數據中心和阿里小貸的業務系統放在同一個集群中,必然造成隨著業務增長爭搶資源的現實。但如果將數據分開存儲在兩個集群的話,又與之前將數據從Hadoop集群拷到ODPS集群來計算并無二致。這時,擴展飛天集群規模成為必然之選。也是在這個時間,“飛天”已經邁向5K時代,平臺和技術的發展走在了業務需求的前面。
提到飛天5K,除單集群規模由1000多臺升級到5000臺之外,其實還有另一個更重要層次的意義不能忽視,這5000臺并不是一個天花板,ODPS集群之間有很強的跨集群復制能力,確保了集群之間很好的連通性、數據有更好的共享性?,F在,ODPS數據中心已搬到另一個飛天5K集群上,但得益于5K的跨集群復制能力,使得ODS層可以為多方提供數據而無需顯式拷貝,用戶感覺不到集群的變化或數據傳輸延遲。
2014年7月8日,ODPS正式開放對外提供服務。此前,ODPS一直是阿里巴巴內部的秘密武器,第一個用戶就是阿里小貸。傳統的數據倉庫一般都搭建在Oracle等關系型數據庫上,而阿里小貸搭建在飛天平臺上,所以必然會要求ODPS能提供很多關系型數據庫的功能,例如,存儲過程編程能力,以及很多數據分布的開放函數和數據分析函數等。這在技術上非常有挑戰性,因為在ODPS這樣的分布式框架里解決這些問題要比在關系型數據庫中難很多。ODPS比較逼真地模擬了傳統RDBMS的物理表和視圖概念,包括存儲分區都很像Oracle,能支持很多傳統數據的功能。
然而,在ODPS上構建一個大型數據倉庫的過程中,仍然有一些地方需要注意,這里分享一個最為關鍵的點--數據管理粒度的劃分,即ODPS和Project的劃分?;旧峡蓪DPS理解成一個數據管理的基本單元,常見劃分粒度的方法有幾種:按照層次分成幾層,每層一個Project;或者整個數據倉庫為一個Project;或者每一個主題數據為一個Project等。這個粒度劃分對于后期的管理成本有非常大的影響。但針對不同團隊的不同階段會有不同的劃分方案,并沒有什么絕對的劃分方案,一般會從幾個維度來思考:數據倉庫所面向的用戶范圍及數據業務要面向的人群,不僅是開發者,用戶也會在數據倉庫上直接使用數據;團隊內部的協同方式,如何決策和分工;數據安全方面的一些策略,例如數據倉庫的基礎層可能不開放,那么它是如何對其他系統做輸出的,不同的輸出策略也會影響數據管理粒度的劃分等。一定要在構建數據倉庫之初,將數據管理粒度劃分好,因為除非來一次比較大的重構,基本上很難有回頭路。
借力云,小企業與大企業同步起跑
從阿里小貸這門數據生意的發展歷程不難看出,小貸業務與阿里云之間既有相互磨合,又有相互促進,從而成就了彼此業務的迅速發展。而云計算為小貸業務帶來的則不僅僅是平臺的支撐、成本的降低,從某種意義上講,云計算是這種以數據為核心的新型互聯網金融業務可以依托的天然平臺。
伴隨著底層技術的不斷完善與持續發展,更多中小企業可以在云計算平臺上獲得數據存儲、數據處理服務,并從而構建豐富的數據應用,云計算使得每一個中小企業具備和大企業同步起跑的底氣,支撐更多創新服務的涌現,這是云計算承載的重要意義所在。