偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

錢(qián)大媽基于 Flink 的實(shí)時(shí)風(fēng)控實(shí)踐

大數(shù)據(jù)
目前錢(qián)大媽基于云原生大數(shù)據(jù)組件(DataWorks、MaxCompute、Flink、Hologres)構(gòu)建了離線和實(shí)時(shí)數(shù)據(jù)一體化的全渠道數(shù)據(jù)中臺(tái),為各業(yè)務(wù)線提供 BI 報(bào)表及數(shù)據(jù)接口支持。

?摘要:本文作者彭明德,介紹了錢(qián)大媽與阿里云 Flink 實(shí)時(shí)計(jì)算團(tuán)隊(duì)共建實(shí)時(shí)風(fēng)控規(guī)則引擎,精確識(shí)別羊毛黨以防營(yíng)銷(xiāo)預(yù)算流失。主要內(nèi)容包括:

  • 項(xiàng)目背景
  • 業(yè)務(wù)架構(gòu)
  • 未規(guī)則模型
  • 難點(diǎn)攻堅(jiān)
  • 回顧展望

一、項(xiàng)目背景

目前錢(qián)大媽基于云原生大數(shù)據(jù)組件(DataWorks、MaxCompute、Flink、Hologres)構(gòu)建了離線和實(shí)時(shí)數(shù)據(jù)一體化的全渠道數(shù)據(jù)中臺(tái),為各業(yè)務(wù)線提供 BI 報(bào)表及數(shù)據(jù)接口支持。除了數(shù)倉(cāng)的分析場(chǎng)景以外,錢(qián)大媽面臨著業(yè)務(wù)系統(tǒng)中的風(fēng)控需求,例如每季度的營(yíng)銷(xiāo)費(fèi)用中被不少的羊毛黨薅走正常用戶的利益,其中羊毛黨一方面可能導(dǎo)致用戶的口碑下降,另一方面也會(huì)影響原有的活動(dòng)運(yùn)營(yíng)預(yù)算迅速攀升從而導(dǎo)致資損。錢(qián)大媽與阿里云 Flink 實(shí)時(shí)計(jì)算團(tuán)隊(duì)共建實(shí)時(shí)風(fēng)控規(guī)則引擎,精確識(shí)別羊毛黨以防營(yíng)銷(xiāo)預(yù)算流失。

圖片

圖一:錢(qián)大媽實(shí)時(shí)風(fēng)控流程示意圖

二、業(yè)務(wù)架構(gòu)

錢(qián)大媽風(fēng)控業(yè)務(wù)架構(gòu)如圖二所示總共分為四個(gè)部分:事件接入、風(fēng)險(xiǎn)感知、風(fēng)險(xiǎn)應(yīng)對(duì)、風(fēng)險(xiǎn)回溯。通過(guò) Flink 在線 ETL 加工處理的實(shí)時(shí)用戶畫(huà)像標(biāo)簽和銷(xiāo)售事實(shí)指標(biāo),除了作為線上 BI 指標(biāo)和實(shí)時(shí)大屏數(shù)據(jù)展示,也為實(shí)時(shí)規(guī)則引擎的事件接入提供重要的數(shù)據(jù)支持。

  1. 事件接入。其中包括黑白灰名單庫(kù)、畫(huà)像特征數(shù)據(jù)、行為埋點(diǎn)數(shù)據(jù)和中臺(tái)交易數(shù)據(jù)。
  2. 風(fēng)險(xiǎn)感知。策略調(diào)研后發(fā)布到規(guī)則引擎,并對(duì)告警結(jié)果進(jìn)行離線回歸和多渠道觸達(dá)。
  3. 風(fēng)險(xiǎn)應(yīng)對(duì)。對(duì)涉及到財(cái)務(wù)結(jié)算的規(guī)則提供再審核、豁免機(jī)制或人工補(bǔ)償。
  4. 風(fēng)險(xiǎn)回溯。策略命中后進(jìn)行統(tǒng)計(jì)和風(fēng)險(xiǎn)分類分級(jí),預(yù)警離線回溯并對(duì)風(fēng)控事件閉件。

圖片

圖二:錢(qián)大媽實(shí)時(shí)風(fēng)控業(yè)務(wù)架構(gòu)圖

三、規(guī)則模型

風(fēng)控業(yè)務(wù)專員通過(guò)產(chǎn)品界面簡(jiǎn)單配置即可實(shí)時(shí)動(dòng)態(tài)發(fā)布風(fēng)控規(guī)則,同時(shí)對(duì)在線 Flink 作業(yè)的規(guī)則進(jìn)行新增、更新以及刪除,其中風(fēng)控規(guī)則模型主要分為統(tǒng)計(jì)型規(guī)則和序列型規(guī)則,相同模型支持子規(guī)則的嵌套,不同模型之間可以通過(guò)與、或關(guān)系進(jìn)行組合。

圖片

圖三:錢(qián)大媽Flink作業(yè)DAG抽象圖

以下為規(guī)則組合中需要?jiǎng)討B(tài)配置能力的配置項(xiàng):

1)分組字段。不同字段分組、多字段分組的情況在風(fēng)控規(guī)則的應(yīng)用中非常常見(jiàn)。有如下規(guī)則樣例:

  1. 以用戶 ID 分組:"用戶的下單次數(shù)";
  2. 以用戶 ID、區(qū)域 ID 作為分組:"用戶同一段時(shí)間內(nèi)不同區(qū)域的訂單數(shù)"。

2)聚合函數(shù)。聚合函數(shù)包括業(yè)務(wù)常用的聚合邏輯,規(guī)則引擎依賴 Flink 內(nèi)置豐富的累加器,并在 Accumulator 接口的基礎(chǔ)上進(jìn)行了根據(jù)需求場(chǎng)景的自定義實(shí)現(xiàn)。樣例規(guī)則如下:

  1. A 門(mén)店近 30 分鐘獨(dú)立消費(fèi)用戶數(shù)小于 100;
  2. B 門(mén)店新客消費(fèi)金額大于 300。

3)窗口周期。窗口周期也即每個(gè)窗口的大小,如業(yè)務(wù)方可能希望在持續(xù) 30 分鐘的秒殺活動(dòng)周期內(nèi)運(yùn)行規(guī)則,或者希望重點(diǎn)關(guān)注異常時(shí)段。

  1. 每 30 分鐘時(shí)間窗口內(nèi),單個(gè)用戶發(fā)起超過(guò) 20 筆未支付訂單;
  2. 凌晨 1 點(diǎn)至 3 點(diǎn),單個(gè)用戶支付訂單數(shù)超 50 筆。

4)窗口類型。為了面對(duì)不同的業(yè)務(wù)需求,我們將業(yè)務(wù)規(guī)則中常見(jiàn)的窗口類型集成到規(guī)則引擎內(nèi)部。其中包括滑動(dòng)窗口、累計(jì)窗口、甚至是無(wú)窗口(即時(shí)觸發(fā))。

5)聚合前的過(guò)濾條件:

  1. 只對(duì)"下單事件"進(jìn)行統(tǒng)計(jì);
  2. 過(guò)濾門(mén)店"虛擬用戶"。

6)聚合后的過(guò)濾條件:

  1. 用戶 A 在 5 分鐘內(nèi)下單次數(shù) "超過(guò) 150 次";
  2. 用戶 B 在 5 分鐘內(nèi)購(gòu)買(mǎi)金額 "超過(guò) 300 元"。

7)計(jì)算表達(dá)式。風(fēng)控規(guī)則的字段口徑通常是需要組合計(jì)算的,我們?cè)诒磉_(dá)式計(jì)算和編譯中集成了更輕便和更高性能的 Aviator 表達(dá)式引擎。規(guī)則樣例如下:

  1. 應(yīng)收金額大于 150 元(應(yīng)收金額 = 商品金額合計(jì) +運(yùn)費(fèi) + 優(yōu)惠合計(jì));
  2. 通過(guò) POS 端支付的應(yīng)收金額大于 150 元。

8)行為序列。行為序列其實(shí)也是事件與事件之間的組合,他打破了以往風(fēng)控規(guī)則只能基于單事件維度描述事實(shí)的壁壘,在事件與事件之間的事實(shí)信息也將被規(guī)則引擎捕捉。規(guī)則樣例如下:

  1. 用戶 A 在 5 分鐘內(nèi)依次做了點(diǎn)擊、收藏、加購(gòu);
  2. 用戶 B 在 30 分鐘前領(lǐng)了優(yōu)惠券,但是沒(méi)有下單。

圖片

圖四:實(shí)時(shí)風(fēng)控規(guī)則配置業(yè)務(wù)邏輯簡(jiǎn)圖

四、難點(diǎn)攻堅(jiān)

針對(duì)規(guī)則模型的流式序列型數(shù)據(jù),我們選擇 Flink CEP 處理事件序列匹配,由于我們整個(gè)風(fēng)控作業(yè)使用 Flink 實(shí)現(xiàn),并且 Flink CEP 作為 Flink 官方原生支持的 Library,集成度高無(wú)需引用額外組件即可滿足事件序列匹配的需求。作業(yè)預(yù)期是允許用戶在產(chǎn)品界面上熱發(fā)布規(guī)則的,但是基于開(kāi)源的 Flink CEP,實(shí)現(xiàn)規(guī)則動(dòng)態(tài)更新能力存在以下困難點(diǎn):

  1. Flink 社區(qū)的 CEP API 無(wú)法支持動(dòng)態(tài)修改 Pattern 即無(wú)法滿足上層規(guī)則中臺(tái)、風(fēng)控中臺(tái)的可集成性;
  2. Flink 社區(qū)的 CEP API 無(wú)法支持Pattern 定義事件之間的超時(shí)。

阿里云 Flink 實(shí)時(shí)計(jì)算團(tuán)隊(duì)和錢(qián)大媽工程師共同攻堅(jiān),在 Flink 社區(qū)發(fā)起如下兩個(gè) FLIP 提案并且在阿里云實(shí)時(shí)計(jì)算產(chǎn)品上面輸出相應(yīng)功能解決此問(wèn)題:

  1. FLIP-200 [1]:CEP 支持多規(guī)則和動(dòng)態(tài) Pattern 變更;
  2. FLIP-228 [2]:CEP 支持 Pattern 定義事件之間的超時(shí)。

阿里云實(shí)時(shí)計(jì)算產(chǎn)品輸出的支持多規(guī)則和動(dòng)態(tài)規(guī)則變更、支持 Pattern 定義事件之間的超時(shí)以及支持基于 IterativeCondition 的累加器功能拓寬 Flink 在實(shí)時(shí)風(fēng)控的能力,并且上述功能已經(jīng)在錢(qián)大媽生產(chǎn)環(huán)境落地實(shí)踐。其中 Flink CEP 動(dòng)態(tài)更新 Pattern 機(jī)制中內(nèi)部各組件的交互總覽如下:

圖片

圖五:社區(qū)Flink CEP動(dòng)態(tài)Pattern機(jī)制

風(fēng)控規(guī)則由產(chǎn)品界面作為入口,規(guī)則寫(xiě)入到 Hologres 中,同時(shí) JDBCPatternProcessorDiscover 周期性輪詢發(fā)現(xiàn)規(guī)則的變更。其中規(guī)則表的數(shù)據(jù)結(jié)構(gòu)如下:

  1. Id:規(guī)則ID;
  2. Version:規(guī)則對(duì)應(yīng)的版本號(hào);
  3. Keyby:規(guī)則分組字段(如需分組);
  4. Pattern:CEP Pattern 序列化后的 Json 字符串;
  5. Function:CEP 匹配后處理的 PatternProcessFunction;
  6. Relation:統(tǒng)計(jì)型和規(guī)則型之間的與、或關(guān)系(前提:統(tǒng)計(jì)型和規(guī)則型的 ID 相同)。

圖片

圖六:社區(qū)Flink動(dòng)態(tài)CEP規(guī)則表

五、回顧展望

基于 Flink 的實(shí)時(shí)風(fēng)控解決方案已接應(yīng)用于錢(qián)大媽集團(tuán)內(nèi)部生產(chǎn)環(huán)境,在此解決方案里未引入新的技術(shù)組件和編程語(yǔ)言,最大化復(fù)用 Flink 資源實(shí)現(xiàn)實(shí)時(shí)風(fēng)控場(chǎng)景需求,極大降低新組件引入存在的潛在運(yùn)維風(fēng)險(xiǎn)。另一方面也極大降低研發(fā)團(tuán)隊(duì)的學(xué)習(xí)成本,高效釋放實(shí)時(shí)計(jì)算的人力資源,并且對(duì)于研發(fā)和業(yè)務(wù)應(yīng)用上面帶來(lái)如下好處:

  • 解耦 Flink 作業(yè)邏輯開(kāi)發(fā)和業(yè)務(wù)規(guī)則定義;
  • 業(yè)務(wù)規(guī)則存儲(chǔ)在 Database 中,便于查看規(guī)則當(dāng)前狀態(tài)和歷史版本;
  • 規(guī)則變更只需修改 Database 存儲(chǔ)的規(guī)則,F(xiàn)link 自動(dòng)加載更新作業(yè)中的規(guī)則列表;
  • 結(jié)合 Flink 生態(tài)能夠非常容易集成事件異構(gòu)數(shù)據(jù)源的讀取與寫(xiě)入;
  • 結(jié)合 Flink 分布式能力,大規(guī)模擴(kuò)展至數(shù)千并發(fā)度匹配運(yùn)行規(guī)則。

后續(xù)錢(qián)大媽將和阿里云實(shí)時(shí)計(jì)算產(chǎn)品團(tuán)隊(duì),繼續(xù)共建完善基于 Flink 的實(shí)時(shí)風(fēng)控風(fēng)控解決方案,其中在 Flink CEP 的未來(lái)規(guī)劃將圍繞以下三個(gè)主要方向展開(kāi):

  1. Flink CEP 能力的進(jìn)一步增強(qiáng);
  2. Flink CEP SQL 的動(dòng)態(tài)能力;
  3. Flink + DSL 的 Native 支持。
責(zé)任編輯:未麗燕 來(lái)源: Apache Flink
相關(guān)推薦

2022-08-02 08:15:11

數(shù)據(jù)平臺(tái)中原銀行銀行業(yè)務(wù)

2023-09-21 07:52:55

Flink CEP復(fù)雜事件處理

2022-08-10 09:02:03

風(fēng)控Flink阿里云

2016-12-15 21:41:15

大數(shù)據(jù)

2018-10-19 14:16:09

Flink數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)系統(tǒng)

2021-08-31 10:18:34

Flink 數(shù)倉(cāng)一體快手

2023-04-04 12:38:50

GPT機(jī)器人LLM

2021-07-16 10:55:45

數(shù)倉(cāng)一體Flink SQL

2022-08-21 07:25:09

Flink云原生K8S

2025-04-03 09:30:56

RedisAI模型

2021-07-13 07:04:19

Flink數(shù)倉(cāng)數(shù)據(jù)

2025-05-20 10:03:59

數(shù)據(jù)倉(cāng)庫(kù)Flink SQLPaimon

2009-07-02 11:52:17

2023-06-06 11:49:24

2022-07-20 23:15:11

Flink數(shù)據(jù)集CDC

2016-09-04 15:14:09

攜程實(shí)時(shí)數(shù)據(jù)數(shù)據(jù)平臺(tái)

2021-06-04 07:24:14

Flink CDC數(shù)據(jù)

2022-07-26 11:42:31

科大訊飛Flink數(shù)據(jù)倉(cāng)庫(kù)

2022-06-22 06:42:35

美團(tuán)業(yè)務(wù)FlinkSQL數(shù)倉(cāng)

2023-12-25 07:35:40

數(shù)據(jù)集成FlinkK8s
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)