王新根
如何把當(dāng)前最流行的流處理技術(shù)應(yīng)用在反欺詐領(lǐng)域?
從整個金融行業(yè)的反欺詐技術(shù)路線來看,一般分為三種模式:
第一種是P處理的反欺詐識別,以反洗錢最為流行,反洗錢是其中最為常見的一種處理模式。第二種是準(zhǔn)實時處理,準(zhǔn)實時和批量分析本質(zhì)上都是事后模式,準(zhǔn)實時處理模式的時效性能夠做到幾秒鐘或者說幾分鐘或者幾小時的情況。第三種是實時處理。從實際場景來看,實時處理以事中處理模式最為有效。與準(zhǔn)實時不一樣,用戶交易都需要實時通過風(fēng)控引擎,由我們的風(fēng)控決策來預(yù)判這個交易有沒有風(fēng)險,這種場景化應(yīng)用能提高我們的客戶體驗。
事中反欺詐三大技術(shù)指標(biāo)是我們攻克的主要問題,即超低延時、非線性、超高并發(fā)。
我們怎樣做反欺詐?
第一步對用戶交易進行攔截,第二步基于攔截的交易,從數(shù)據(jù)庫回溯交易中相關(guān)要素,過去一段歷史時間內(nèi)的流水,從數(shù)據(jù)庫取回來,取回來后會進行事中預(yù)算。這些指標(biāo),比如當(dāng)前登錄的用戶是A,A客戶在過去24小時過去3個月內(nèi)在哪些銀行登錄過,他的頻次是什么,他的交易是什么,他過去在什么地方交易過,諸如此類的指標(biāo)有幾百個,第三步需要做的則是針對這些指標(biāo)的預(yù)算。得到這些指標(biāo)之后與當(dāng)前的交易數(shù)據(jù)合在一起,再基于這些既定的規(guī)則進行比對(這個規(guī)則不一定是真實的規(guī)則,也有一種機器學(xué)習(xí)模型),還要進行決策,通過一個觸發(fā)的規(guī)則列表給出一個最終風(fēng)險定義。計算性能和延時如果能夠解決掉,我們的事中反欺詐基本上也得到了完美的解決。
OLAP怎么發(fā)展?
最開始是數(shù)據(jù)庫的批處理技術(shù)。我們的數(shù)據(jù)倉庫運行模型一般需要幾十個小時,經(jīng)過幾十個小時才能給出一個完整答案。谷歌推出一個理念,基本上解決了批處理的時效性問題,把原來幾十個小時壓縮在幾小時、幾十分鐘甚至幾分鐘之內(nèi)。批處理技術(shù)講究的理念是先將原始數(shù)據(jù)累積下來,用的時候及時得到查詢結(jié)果。往往數(shù)據(jù)的回溯計算耗時較長,最多延時幾十毫秒為極限。
后來出現(xiàn)了流處理技術(shù),與批處理技術(shù)相比,最本質(zhì)的區(qū)別在于邏輯先行,計算所有數(shù)據(jù)中每一用戶過去24小時累積交易額邏輯,這個邏輯是增量運營的。流處理中所有處理結(jié)果是動態(tài)的,隨著數(shù)據(jù)的進入不斷地進行變化。跟傳統(tǒng)的數(shù)據(jù)倉庫不太一樣,流處理講究分布式處理,理論上我們可以做到在1毫秒以內(nèi)解決事中反欺詐的場景。
流處理技術(shù)會解決很多問題.第一是指標(biāo)的存儲問題。所有計算中,結(jié)果怎么存儲?這些結(jié)果非常大,要解決所有數(shù)據(jù)的每一個維度指標(biāo),包括所有的IP、所有設(shè)備、所有倉庫、所有地區(qū)的各種各樣的維度,一般而言不能放在一個機器上。此外,特別是在金融領(lǐng)域,要求我們存儲數(shù)據(jù)是高可靠、高可用和高保障。
第二是算法需增量計算。所有的流處理算法一定要增量,需要把我們原來在大數(shù)據(jù)處理空間上的應(yīng)用轉(zhuǎn)化到時間上,這里的簡單算法很好做,比如求和、平均。在金融領(lǐng)域,特別是在反欺詐里面經(jīng)常用到的算法,連續(xù)的統(tǒng)計某一個用戶過去連續(xù)的、最大的失敗交易指數(shù)是多少,這個用戶在他過去24小時連續(xù)的遞減交易,這類在流動性檢測、市場風(fēng)險檢測波動的算法,包括一些排序、趨同的計算,這些都需要流處理實現(xiàn)。
第三是事件序列識別,對定位風(fēng)險的時候非常有幫助。在判定當(dāng)前用戶有沒有欺詐嫌疑時,我的對比是跟他類似所有用戶的結(jié)果,所有用戶是個大維度,這個數(shù)據(jù)量非常密級,原來是30天,后來發(fā)現(xiàn)不行,得具備統(tǒng)計30年的長周期能力,這是要解決的一些難點。
流立方就是在這樣一個背景下興起的云處理技術(shù),這個平臺本質(zhì)上是流處理平臺,所有數(shù)據(jù)流過即處理,處理以立方體的形式保存。立方體細分為三個維度:數(shù)據(jù)維度、計算指標(biāo)和時間窗口。
我們要讓數(shù)據(jù)動起來,系統(tǒng)時間在移動的時候,在我們立方體里的數(shù)據(jù)也在變化。對于某一個用戶過去24小時的值在發(fā)生變化,剛好有幾筆交易在一兩秒鐘之內(nèi)發(fā)生,24小時精準(zhǔn)定位需要剔除,窗口數(shù)據(jù)已經(jīng)到來,我們的數(shù)據(jù)是動態(tài)的。后面的數(shù)據(jù)加進來,前面流失的數(shù)據(jù)也需要解決。數(shù)據(jù)的時間窗口要進行任意調(diào)整,比當(dāng)前時間往前推24小時,這是非常重要的幾點。
流立方具備基于時間窗口移動的動態(tài)數(shù)據(jù)快速處理技術(shù)(時序處理) 以及基于事件驅(qū)動的模式識別技術(shù)(CEP),支持計數(shù)、求和、平均、最大、最小、方差、標(biāo)準(zhǔn)差、K階中心矩、連續(xù)、遞增/遞減、最大連續(xù)遞增/遞減、唯一性判別、采集、過濾、排序等多種分布式實時計算模型。
流立方平臺本質(zhì)上是流式處理,高存速、時序存儲、復(fù)雜事件是我們自有的特色,流立方有三倍效率的提升度。
我們的流立方平臺應(yīng)用反欺詐是怎么做的呢?
通過設(shè)備發(fā)起一筆交易,這筆交易流入電子銀行業(yè)務(wù)和信息系統(tǒng)會被攔截,并進行識別。在識別過程中,用到歷史數(shù)據(jù)得到的指標(biāo)是流立方平臺實時計算出來的,計算完后告知當(dāng)前這筆交易有沒有風(fēng)險,這筆交易沒有風(fēng)險就會流入核心電子平臺業(yè)務(wù)系統(tǒng),流入業(yè)務(wù)系統(tǒng)后,這筆流水會在流立方的計算引擎中進行指標(biāo)計算,并存儲到立方體里,效率非常高。
此外,流處理技術(shù)在實時報表、儀表盤方面有很大的價值,通過采集業(yè)務(wù)系統(tǒng)的數(shù)據(jù)進行流處理,把指標(biāo)數(shù)據(jù)在圖表上進行展現(xiàn),可以取到一個非常好的結(jié)果。這樣的圖表在高并發(fā)、低延時方面都有先天的特性。(根據(jù)演講內(nèi)容整理,未經(jīng)本人審核)