System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及數據流處理,尤其涉及一種基于flink的通用決策日志實時落庫方法。
技術介紹
1、風控決策系統會從內部外部調用大量的數據接口,每個接口本身都有大量的接口字段。風控決策系統會將決策流所有節點日志都以json格式記錄到決策日志總表中,但是這張表由于會將所有外部調用接口中的字段都記錄下來,無論決策中是否用到了,所以json內容非常大,導致無法直接分析使用,跑批處理性能也跟不上。為了下游能夠使用分析日志數據,就需要風控決策系統針對每個不同渠道的日志單獨再落一張表,且每個平臺由于策略參數都不一致,每個平臺都需要定制化落庫。最終,再通過數倉t+1的數據同步到分析庫中,供業務使用。因此在開發效率和數據時效性上都存在較大的問題。
2、在風控決策系統中,為了全面記錄和追蹤決策過程,系統會從內部和外部調用大量的數據接口。這些接口通常包含眾多的字段信息,用于描述各種決策相關的數據和狀態。風控決策系統為了保持決策的透明度和可追溯性,會將決策流中所有節點的日志以json格式詳細記錄下來,并存入一個統一的決策日志總表中。
3、目前,風控決策系統通常采用以下方式處理決策日志:所有與決策相關的數據,無論是否被實際使用,都會被記錄在決策日志總表中。這導致json格式的內容異常龐大,包含了大量的冗余信息。為了滿足下游分析系統的需求,風控決策系統需要針對每個不同的渠道或平臺,單獨生成一張日志表。這是因為每個平臺的策略參數和關注點都不同,需要定制化的日志內容。生成的定制化日志表會通過數倉的t+1(即次日)數據同步機制,同步到分析庫
4、盡管現有的風控決策日志處理方式在一定程度上滿足了業務需求,但存在以下幾點缺陷:1)性能問題:由于決策日志總表包含了大量的字段信息,導致表的大小龐大,查詢和分析性能低下。跑批處理時,系統資源消耗巨大,處理時間長。2)開發效率低:為了生成定制化的日志表,開發人員需要為每個平臺編寫特定的代碼和邏輯。這不僅增加了開發工作量,還降低了代碼的復用性和可維護性。3)數據時效性差:由于采用t+1的數據同步機制,導致分析庫中的數據與實時決策數據之間存在一天的延遲。這對于需要實時洞察決策效果和優化策略的業務場景來說,是難以接受的。
5、現有的風控決策日志處理方式在性能、開發效率和數據時效性方面都存在明顯的問題和缺陷。這些問題限制了風控決策系統的進一步優化和升級,也影響了業務人員的決策效率和準確性。
技術實現思路
1、有鑒于此,有必要提供一種基于flink的通用決策日志實時落庫方法,用以解決現有技術的上述缺陷。
2、為了解決上述問題,第一方面,本專利技術實施例提供一種基于flink的通用決策日志實時落庫方法,包括:
3、利用ogg工具,將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中;
4、通過ogg工具將風控決策系統配置表中的決策配置輸入參數字段實時同步到目標配置表中,并將非決策輸入參數字段添加到目標配置表,將目標配置表中的決策配置輸入參數字段和非決策輸入參數字段合并;
5、將所述目標配置表中的合并數據通過ogg工具實時寫入kafka的特定topic中;
6、使用flink將目標配置表中實時變化的多列數據拼接為長字符串,并寫入oracle維度表中;
7、通過flink程序將kafka中的日志數據實時與所述oracle維度表進行關聯,動態解析得到關鍵信息,生成json字段并寫入doris分析庫。
8、優選的,所述利用ogg工具,將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中,包括:
9、利用ogg工具實時從風控決策系統數據庫oracle的原始決策日志表中捕獲新增調用日志;
10、將新增調用日志轉換為json格式,并寫入kafka的固定topic中。
11、優選的,在利用ogg工具將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中之后,所述方法還包括:
12、配置flink任務以訂閱kafka日志,作為flink處理的主流數據。
13、優選的,所述使用flink將目標配置表中實時變化的多列數據拼接為長字符串,包括:
14、使用flink的udaf功能,將目標配置表中實時變化的多列數據拼接成長字符串;其中,udaf是用戶自定義聚合函數。
15、優選的,所述寫入oracle維度表中,包括:
16、目標配置表中的變化數據被flink實時捕獲并處理;當目標配置表增加新的參數時,flink實時地更新oracle維度表中的長字符串。
17、優選的,所述通過flink程序將kafka中的日志數據實時與所述oracle維度表進行關聯,動態解析得到關鍵信息,生成json字段并寫入doris分析庫,具體包括:
18、flink程序將kafka中的決策日志數據實時與所述oracle維度表進行關聯;
19、flink程序從oracle維度表中動態獲取需要解析的字段,從所述決策日志數據中實時解析出決策配置輸入參數和非決策輸入參數;
20、將解析得到的信息以json字段格式寫入doris分析庫中。
21、第二方面,本專利技術還提供了一種電子設備,包括存儲器和處理器,其中,
22、所述存儲器,用于存儲程序;
23、所述處理器,與所述存儲器耦合,用于執行所述存儲器中存儲的所述程序,以實現如本專利技術第一方面實施例所述的基于flink的通用決策日志實時落庫方法中的步驟。
24、第三方面,本專利技術還提供了一種計算機可讀存儲介質,用于存儲計算機可讀取的程序或指令,所述程序或指令被處理器執行時能夠實現如本專利技術第一方面實施例所述的基于flink的通用決策日志實時落庫方法中的步驟。
25、本專利技術提供的基于flink的通用決策日志實時落庫方法,與現有技術相比,具有以下有益效果:
26、1)本專利技術利用flink的高吞吐量和低延遲特性,實時采集并處理風控決策系統生成的決策日志。flink任務直接接入決策日志總表,實時讀取數據,進行必要的轉換和處理后,立即將處理結果寫入到各個平臺的日志分析庫表中。實現將傳統t+1的日志落庫時效提升至秒級,顯著增強了數據的實時性。
27、2)本專利技術將各個平臺不同的落庫需求進行了配置化,不需要為每個平臺編寫獨立的代碼來處理其特定的落庫需求。這些需求被以配置的形式存儲在配置表或配置文件中。當需要處理不同平臺的日志時,系統只需讀取相應的配置,并根據配置來解析和處理數據。
28、3)通過實時讀取配置和flink的實時處理能力,本專利技術實現了一套代碼處理多個平臺日志的功能。這不僅大大減少了開發工作量,還提高了代碼的復用性和可維護性。開發人員無需再為每個平臺編寫獨立的代碼,只需關注配置本文檔來自技高網...
【技術保護點】
1.一種基于flink的通用決策日志實時落庫方法,其特征在于,包括:
2.根據權利要求1所述的基于flink的通用決策日志實時落庫方法,其特征在于,所述利用OGG工具,將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中,包括:
3.根據權利要求1所述的基于flink的通用決策日志實時落庫方法,其特征在于,在利用OGG工具將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中之后,所述方法還包括:
4.根據權利要求1所述的基于flink的通用決策日志實時落庫方法,其特征在于,所述使用flink將目標配置表中實時變化的多列數據拼接為長字符串,包括:
5.根據權利要求4所述的基于flink的通用決策日志實時落庫方法,其特征在于,所述寫入oracle維度表中,包括:
6.根據權利要求3所述的基于flink的通用決策日志實時落庫方法,其特征在于,所述通過flink程序將kafka中的日志數據實時與所述oracle維度表進行關聯,動態解析得到關鍵信息,生成json字段并寫入Dori
7.一種電子設備,
8.一種計算機可讀存儲介質,其特征在于,用于存儲計算機可讀取的程序或指令,所述程序或指令被處理器執行時能夠實現上述權利要求1至6中任意一項所述的基于flink的通用決策日志實時落庫方法中的步驟。
...【技術特征摘要】
1.一種基于flink的通用決策日志實時落庫方法,其特征在于,包括:
2.根據權利要求1所述的基于flink的通用決策日志實時落庫方法,其特征在于,所述利用ogg工具,將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中,包括:
3.根據權利要求1所述的基于flink的通用決策日志實時落庫方法,其特征在于,在利用ogg工具將風控決策系統數據庫中原始決策日志表oracle的新增數據實時寫入kafka中之后,所述方法還包括:
4.根據權利要求1所述的基于flink的通用決策日志實時落庫方法,其特征在于,所述使用flink將目標配置表中實時變化的多列數據拼接為長字符...
【專利技術屬性】
技術研發人員:王鵬,黃曦,秦婷婷,陸皓,
申請(專利權)人:蘇銀凱基消費金融有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。