[發明專利]一種數據處理方法、裝置、設備及存儲介質有效
| 申請號: | 202110620098.0 | 申請日: | 2021-06-03 |
| 公開(公告)號: | CN113326131B | 公開(公告)日: | 2023-03-21 |
| 發明(設計)人: | 艾智遠;林攀學;易樂天 | 申請(專利權)人: | 深信服科技股份有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06Q10/10 |
| 代理公司: | 北京派特恩知識產權代理有限公司 11270 | 代理人: | 賈偉;張穎玲 |
| 地址: | 518055 廣東省深圳市*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據處理 方法 裝置 設備 存儲 介質 | ||
本申請公開一種數據處理方法、裝置、設備及存儲介質,該方法包括:獲取待處理工作流描述文件;提取隱藏在工作流描述文件中每個工作流的第一算子和第二算子之間的中間算子;將中間算子增添至每個工作流的第一算子和第二算子之間;對具有相同算子的工作流進行算子的合并操作,得到優化后的工作流描述文件;將優化后的工作流描述文件轉換成執行器能夠執行的程序進行數據處理。如此,通過提取出隱藏在每個工作流的第一算子和第二算子之間的中間算子,將中間算子增添至每個工作流的兩個算子之間,再對不同工作流的相同算子進行合并,合并后的不同工作流進行數據處理時會消費同種算子,使得在工作流較多場景下節省一定資源,且提升工作流性能。
技術領域
本申請涉及大數據處理技術,尤其涉及一種數據處理方法、裝置、設備及存儲介質。
背景技術
現有的批/流處理引擎(例如FLink引擎)在工作流增多的場景下易缺乏資源,為減少資源的損耗,需要通過合并工作流的方式將多個工作流放在同一個任務中執行,這樣減少開啟任務數量,進而減少開啟任務時的管理進程資源,以達到減少資源的目的。然而,合并后的工作流之間仍是單獨執行,使得合并后的工作流性能并未提升,不足以滿足當前的性能需求。
發明內容
為解決上述技術問題,本申請提供一種數據處理方法、裝置、設備及存儲介質。
本申請的技術方案是這樣實現的:
第一方面,提供了一種數據處理方法,該方法包括:
獲取待處理的工作流描述文件;其中,所述工作流描述文件包括至少兩個工作流;
提取隱藏在每個工作流的第一算子和第二算子之間的中間算子;
將所述中間算子增添至每個工作流的所述第一算子和所述第二算子之間;
對具有相同算子的工作流進行算子的合并操作,得到優化后的工作流描述文件;
將所述優化后的工作流描述文件轉換成執行器能夠執行的程序進行數據處理。
上述方案中,存在以下至少一種情況時,確定為所述相同算子:所述至少兩個工作流存在相同的第一算子;所述至少兩個工作流存在相同的第二算子;所述至少兩個工作流存在相同的中間算子。
上述方案中,所述工作流描述文件為JSON文件、YAML文件或SPL語法文件。
上述方案中,所述執行器包括用于進行流處理、批處理或數據同步處理的引擎。
上述方案中,所述提取隱藏在每個工作流的第一算子和第二算子之間的中間算子,包括:將所述工作流描述文件轉換為類對象;調用所述類對象中預先設置的隱藏算子提取算法,從所述類對象中提取隱藏在每個工作流的所述第一算子和所述第二算子之間的所述中間算子。
上述方案中,所述方法還包括:在預先建立的注冊中心注冊每個工作流的標識信息、所述第一算子的輸出類型和所述第二算子的輸入類型;所述從所述類對象中提取隱藏在每個工作流的所述第一算子和所述第二算子之間的所述中間算子,包括:基于每個工作流的標識信息,從所述注冊中心提取每個工作流的所述第一算子的輸出類型和所述第二算子的輸入類型;基于每個工作流的所述第一算子的輸出類型和所述第二算子的輸入類型,確定所述中間算子。
上述方案中,所述對具有相同算子的工作流進行算子的合并操作,包括:所述第一算子為數據源算子時,獲取每個工作流的數據源算子的輸入數據參數;對不同工作流中具有相同輸入數據參數的數據源算子進行合并操作。
上述方案中,所述輸入數據參數至少包括:數據來源信息和數據類別信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深信服科技股份有限公司,未經深信服科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110620098.0/2.html,轉載請聲明來源鉆瓜專利網。





