[发明专利]一种数据处理方法、装置、设备及存储介质有效
申请号: | 202110620098.0 | 申请日: | 2021-06-03 |
公开(公告)号: | CN113326131B | 公开(公告)日: | 2023-03-21 |
发明(设计)人: | 艾智远;林攀学;易乐天 | 申请(专利权)人: | 深信服科技股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06Q10/10 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 贾伟;张颖玲 |
地址: | 518055 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 装置 设备 存储 介质 | ||
本申请公开一种数据处理方法、装置、设备及存储介质,该方法包括:获取待处理工作流描述文件;提取隐藏在工作流描述文件中每个工作流的第一算子和第二算子之间的中间算子;将中间算子增添至每个工作流的第一算子和第二算子之间;对具有相同算子的工作流进行算子的合并操作,得到优化后的工作流描述文件;将优化后的工作流描述文件转换成执行器能够执行的程序进行数据处理。如此,通过提取出隐藏在每个工作流的第一算子和第二算子之间的中间算子,将中间算子增添至每个工作流的两个算子之间,再对不同工作流的相同算子进行合并,合并后的不同工作流进行数据处理时会消费同种算子,使得在工作流较多场景下节省一定资源,且提升工作流性能。
技术领域
本申请涉及大数据处理技术,尤其涉及一种数据处理方法、装置、设备及存储介质。
背景技术
现有的批/流处理引擎(例如FLink引擎)在工作流增多的场景下易缺乏资源,为减少资源的损耗,需要通过合并工作流的方式将多个工作流放在同一个任务中执行,这样减少开启任务数量,进而减少开启任务时的管理进程资源,以达到减少资源的目的。然而,合并后的工作流之间仍是单独执行,使得合并后的工作流性能并未提升,不足以满足当前的性能需求。
发明内容
为解决上述技术问题,本申请提供一种数据处理方法、装置、设备及存储介质。
本申请的技术方案是这样实现的:
第一方面,提供了一种数据处理方法,该方法包括:
获取待处理的工作流描述文件;其中,所述工作流描述文件包括至少两个工作流;
提取隐藏在每个工作流的第一算子和第二算子之间的中间算子;
将所述中间算子增添至每个工作流的所述第一算子和所述第二算子之间;
对具有相同算子的工作流进行算子的合并操作,得到优化后的工作流描述文件;
将所述优化后的工作流描述文件转换成执行器能够执行的程序进行数据处理。
上述方案中,存在以下至少一种情况时,确定为所述相同算子:所述至少两个工作流存在相同的第一算子;所述至少两个工作流存在相同的第二算子;所述至少两个工作流存在相同的中间算子。
上述方案中,所述工作流描述文件为JSON文件、YAML文件或SPL语法文件。
上述方案中,所述执行器包括用于进行流处理、批处理或数据同步处理的引擎。
上述方案中,所述提取隐藏在每个工作流的第一算子和第二算子之间的中间算子,包括:将所述工作流描述文件转换为类对象;调用所述类对象中预先设置的隐藏算子提取算法,从所述类对象中提取隐藏在每个工作流的所述第一算子和所述第二算子之间的所述中间算子。
上述方案中,所述方法还包括:在预先建立的注册中心注册每个工作流的标识信息、所述第一算子的输出类型和所述第二算子的输入类型;所述从所述类对象中提取隐藏在每个工作流的所述第一算子和所述第二算子之间的所述中间算子,包括:基于每个工作流的标识信息,从所述注册中心提取每个工作流的所述第一算子的输出类型和所述第二算子的输入类型;基于每个工作流的所述第一算子的输出类型和所述第二算子的输入类型,确定所述中间算子。
上述方案中,所述对具有相同算子的工作流进行算子的合并操作,包括:所述第一算子为数据源算子时,获取每个工作流的数据源算子的输入数据参数;对不同工作流中具有相同输入数据参数的数据源算子进行合并操作。
上述方案中,所述输入数据参数至少包括:数据来源信息和数据类别信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深信服科技股份有限公司,未经深信服科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110620098.0/2.html,转载请声明来源钻瓜专利网。