1 名工程師輕鬆管理 20 個工作流,創業企業用 Serverless 讓數據處理流程提效

作者:嶽洋、陳德全、劉靜娜

北京語勢科技有限公司成立於 2023 年 6 月,語勢科技定位爲“智能投資時代的主題入口”,在資管行業從以機構爲核心轉向以用戶爲核心的變革時代,通過打造主題投資引擎,賦能普惠投資一體化,打造以投資者和資管機構爲主題和核心、自然語言交互形式爲入口的“新橋樑”。

語勢科技日均處理萬條金融資訊,通過收集信息、發掘新興趨勢、判斷趨勢拐點,形成了包含 10+ 個超級主題、40+ 個投資主題、200+ 子主題的主題投資體系;現有 10 個行業標杆客戶, 通過數據 API 和週報月報等形式提供服務。目前已累計發出約 500 份報告,近 1000 份公衆號分析文章。 遠期將通過實時挖掘用戶意圖和進行主題計算,實現千人千面的主題投資 Agent。

平臺特點及遇到的挑戰

語勢科技的產品屬於典型的信息服務類產品。平臺通過多種渠道彙集金融行業資訊並存儲到本地後,按照投資分析框架啓動相關流程進行處理,最終形成金融數據產品對外提供服務。平臺業務功能及對系統資源的需求存在如下特點:

1. 數據量大,存儲需求多樣

a) 平臺的核心數據以非結構化數據爲主,各個處理階段的數據包括源數據、中間數據及結果數據總量在 TB 級別,雖然這個量級對於文件或對象存儲來講是小菜一碟,但是對於分析/索引類存儲還是存在一定壓力。

b) 非結構化數據存儲在面對不同的處理過程時,需要多種訪問接口支持,包括文件、對象、OLAP 數據庫和緩存及索引系統等。

c) 金融資訊的處理需要滿足時效性要求,因此對於分析型存儲系統的查詢性能也存在較高要求。

2. 數據處理過程複雜多變

a) 數據處理流程是投資分析策略在系統中的體現,是整個平臺的核心。這些流程中的關鍵節點處理邏輯是無法通過標準化的平臺功能實現,需要通過 Java/Python 代碼發佈到平臺,並可以由流程靈活調用。

b) 爲了實現業務邏輯需求,在處理流程上各處理節點之間,以及節點和數據存儲接口間,甚至各流程間都存在頻繁的數據流動和交互需求。

c) 投資策略需要及時針對市場變化和客戶需求進行調整。數據處理流程甚至核心處理邏輯就需要同步按照業務策略進行調整。

d) 因爲數據處理邏輯的複雜性,導致開發上線後,還經常需要在生產環境針對特定數據的處理過程進行跟蹤和分析,需要能夠方便查看詳盡的運行時信息。

3. 平臺資源需求存在明顯峯谷

a) 平臺在全天運行期間會存在固定峯值,包括資訊集中流入和處理時段,業務人員集中查詢時段。同時,在周初和月初也存在訪問峯值。

b) 峯值時段對處理性能擴容比例要求較高,且不同的峯值類型對系統資源的需求類別也不一樣,需要針對不同場景進行擴容動作的預先規劃。

4. 可靠性/及時性要求

a) 資訊會 24 小時持續產生並流入平臺,需要在進入平臺若干分鐘內處理完成並進入對外服務數據池,因此需要平臺能夠穩定持續進行處理,遇到峯值流量自動擴容以避免數據積壓。如果處理過程存在遺漏或者出錯要能夠自動重試。

b) 對外服務相關係統作爲最終用戶的訪問入口,對其服務連續性有一定要求。

針對上述的平臺功能設計,語勢科技對包括 IaaS/PaaS 在內的 IT 基礎設施產生了如下需求:

1. 多樣存儲類型,各系統間流暢互訪, 支持多樣存儲類型,各類存儲系統間可以無縫互訪,日常使用、管理和數據流轉可以通過 GUI 配置。

2. 簡單靈活的數據處理流程

a) 提供統一的處理流程管理入口,支持圖形化的流程設計。

b) 支持使用常見開發語言實現複雜業務邏輯,並能夠無縫嵌入流程。

c) 流程節點間,流程和數據存儲接口,流程間可以實現複雜交互控制。

d) 可以對運行時流程跟蹤分析處理過程,能夠方便的對特定數據或流程進行跟蹤分析。

3. 系統自動擴縮容

a) 數據處理流程的系統容量能夠按照流量峯谷自動擴縮容,且其擴縮容可以按照一定腳本針對系統間依賴關係進行處理。

b) 其他業務系統需要按照業務訪問峯谷自動調整。

4. 研發工作整體提質增效

a) 在保證系統可靠性的前提下,降低IT資源直接成本,以及管理成本b) 提高 CI/CD 整體流程效率。

雲工作流 CloudFlow + 函數計算 FC 助力複雜數據處理提

語勢科技是在雲原生浪潮下誕生的數據科技企業,在創立之初就決定採用雲原生技術來提高 IT 工作整體質效並優化成本。

在提升質效過程中遇到的挑戰主要集中在數據處理流程方面,因此除了使用阿里雲效及容器化部署等 CI/CD 常規提效工具,經過團隊考察,最終選擇了雲工作流 CloudFlow 和函數計算 FC 兩個新產品。目標是通過雲工作流 CloudFlow 解決管理複雜數據流程的需求,使用函數計算 FC 解決雲工作流 CloudFlow 運行過程中部分節點處理複雜業務邏輯,同時處理能力可以完美解決彈性伸縮的需求。

數據流程圖如下:

經過實踐發現,對於常見的工作流,使用雲工作流 CloudFlow 的 Web 界面開發相比使用主流 Java 應用框架減少約一半開發工作量,同時,由於省去了上線發佈環節,上線調試工作效率也有所提升,基於 web 控制檯的跟蹤調試在經過一段時間適應後使用效率也有較大提升。

在這半年的使用期間,語勢科技已累計開發了將近 20 個工作流,工作流調用數十個函數,運行幾十萬次。儘管在只有一名工程師負責工作流的情況下,還是能夠保持平均每兩週左右會上線一個新的工作流。對於工程師來講,除了個別時候需要進行線上跟蹤調試,工作流上線後基本不用關心其運行狀態,真正做到了“發佈後不用管”。

展望

作爲一個大模型年代圍繞數據爲核心的創業企業,我們會更加深度挖掘數據平臺和大模型能力結合的可能性,通過阿里提供的基礎設施創新能力,提供給我們的最終客戶能力更強、迭代更快的數據產品。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章