CN111324345A - 数据处理方式生成方法、数据处理方法、装置及电子设备 - Google Patents
数据处理方式生成方法、数据处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111324345A CN111324345A CN202010196002.8A CN202010196002A CN111324345A CN 111324345 A CN111324345 A CN 111324345A CN 202010196002 A CN202010196002 A CN 202010196002A CN 111324345 A CN111324345 A CN 111324345A
- Authority
- CN
- China
- Prior art keywords
- operator
- target
- data processing
- data
- operators
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供了一种数据处理方式生成方法、数据处理方法、装置及电子设备,数据处理方式生成方法包括:确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;获得各个目标实现算子的配置信息;确定各个目标实现算子之间的数据流向;以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到数据处理方式。使用本发明实施例提供的方案可以更高效地生成数据处理方式。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种数据处理方式生成方法、数据处理方法、装置及电子设备。
背景技术
随着互联网技术的发展,各种网络平台应运而生。各个网络平台的用户在享用网络平台所提供服务的同时产生了大量的实时数据,网络平台为了解其用户的情况,需要对上述实时数据进行处理。例如,对实时视频播放数据进行统计得到视频播放量、对实时观影数据进行统计得到观影人数、对实时用户数据进行分析生成用户画像等。
为对上述实时数据进行处理,需要生成数据处理方式。相关技术中,通常由工作人员开发用于描述数据处理方式的应用,进而生成数据处理方式。
然而,由于不同的实时数据具有不同的特点,所以需要生成不同的数据处理方式,以对不同的实时数据进行处理,这样需要工作人员开发不同的应用。然而开发每一个应用均需要一定的开发周期,开发不同的应用需要的开发周期则更长,因此,通过开发人员开发应用的方式生成数据处理方式效率低。
发明内容
本发明实施例的目的在于提供一种数据处理方式生成方法、数据处理方法、装置及电子设备,以更高效地生成数据处理方式。具体技术方案如下:
第一方面,本发明实施例提供了一种数据处理方式生成方法,所述方法包括:
确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,所述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
获得各个目标实现算子的配置信息;
确定各个目标实现算子之间的数据流向;
以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到所述数据处理方式,其中,所述有向图中两个节点间有向连线的方向与所述两个节点所对应的目标实现算子间的数据流向一致。
可选的,所述有向图为:有向无环图DAG。
可选的,所述确定用户通过图形化用户界面在功能算子库中选择的实现算子,包括:
确定用户通过图形化用户界面、按照算子类型在功能算子库中选择的实现算子,其中,所述算子类型包括:数据读取类算子、数据转换类算子、数据输出类算子。
第二方面,本发明实施例提供了一种数据处理方法,所述方法包括:
确定用于对待处理数据进行处理的数据处理方式,作为目标数据处理方式,其中,所述数据处理方式是通过生成用于描述所述数据处理方式的有向图的方式生成的,所述有向图中:以所述数据处理方式包括的数据处理功能对应的实现算子为节点、每一实现算子的配置信息为实现算子所对应节点的属性、且两个节点间的有向连线的方向与所述两个节点所对应实现算子间的数据流向一致,所述实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
获得用于描述所述目标数据处理方式的目标有向图;
解析所述目标有向图,得到所述目标有向图中各个节点对应的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向;
以各个目标实现算子的配置信息配置各个目标实现算子;
按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理。
可选的,所述按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理,包括:
针对每一目标实现算子,若存在数据流向指向该目标实现算子的父算子,获取使用所述父算子对其输入数据进行数据处理的父处理结果,并使用该目标实现算子对所述父处理结果进行处理;
针对每一目标实现算子,若不存在数据流向指向该目标实现算子的父算子,使用该目标实现算子对所述待处理数据进行处理。
可选的,所述使用该目标实现算子对所述父处理结果进行处理,包括:
使用该目标实现算子对所述父处理结果进行处理,得到数据流;
利用流表对偶性原理将所述数据流转换为流表;
所述使用该目标实现算子对所述待处理数据进行处理,包括:
使用该目标实现算子对所述待处理数据进行处理,得到数据流;
利用流表对偶性原理将所述数据流转换为流表。
可选的,所述获取使用所述父算子对其输入数据进行数据处理的父处理结果,包括:
判断是否已使用该目标实现算子的各父算子对其输入数据进行了数据处理;
若为是,则获取使用各父算子对其输入数据进行数据处理的父处理结果。
第三方面,本发明实施例还提供了一种数据处理方式生成装置,所述装置包括:
算子确定单元,用于确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,所述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
配置获得单元,用于获得各个目标实现算子的配置信息;
流向确定单元,用于确定各个目标实现算子之间的数据流向;
方式生成单元,用于以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到所述数据处理方式,其中,所述有向图中两个节点间有向连线的方向与所述两个节点所对应的目标实现算子间的数据流向一致。
第四方面,本发明实施例还提供了一种数据处理装置,所述装置包括:
方式确定单元,用于确定用于对待处理数据进行处理的数据处理方式,作为目标数据处理方式,其中,所述数据处理方式是通过生成用于描述所述数据处理方式的有向图的方式生成的,所述有向图中:以所述数据处理方式包括的数据处理功能对应的实现算子为节点、每一实现算子的配置信息为实现算子所对应节点的属性、且两个节点间的有向连线的方向与所述两个节点所对应实现算子间的数据流向一致,所述实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
有向图获得单元,用于获得用于描述所述目标数据处理方式的目标有向图;
有向图解析单元,用于解析所述目标有向图,得到所述目标有向图中各个节点对应的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向;
算子配置单元,用于以各个目标实现算子的配置信息配置各个目标实现算子;
数据处理单元,用于按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理。
第五方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现第一方面任一项所述的数据处理方式生成方法。
使用本发明实施例提供的技术方案生成数据处理方式时,用户可以通过图形化用户界面在功能算子库中选择待生成数据处理方式所需的目标实现算子,为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,这样,作为上述数据处理方式生成方法执行主体的电子设备在获取了用户输入的上述信息后,可以以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,其中,有向图中两个节点间有向连线的方向与两个节点所对应的目标实现算子间的数据流向一致,生成有向图后,即得到了用户所需的数据处理方式。
可见,使用本发明实施例提供的技术方案生成数据处理方式时,用户只需在图形化用户界面中选择目标实现算子、为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,上述电子设备即可生成用户所需的数据处理方式,无需用户针对所需的数据处理方式开发专门的应用,因此,使用本发明实施例提供的方案可以更快速、高效地生成数据处理方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的数据处理方式生成方法的一种流程示意图;
图2为本发明实施例提供的有向图的一种示意图;
图3为本发明实施例提供的数据处理方法的一种流程示意图;
图4为本发明实施例提供的数据处理方法的另一种流程示意图;
图5为本发明实施例提供的有向图的另一种示意图;
图6为本发明实施例提供的数据处理方式生成装置的一种结构示意图;
图7为本发明实施例提供的数据处理装置的一种结构示意图;
图8为本发明实施例提供的电子设备的一种结构示意图;
图9为本发明实施例提供的电子设备的另一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
为了更高效地生成数据处理方式,本发明实施例提供了一种数据处理方式生成方法、数据处理方法、装置及电子设备。
下面首先对本发明实施例所提供的数据处理方式生成方法进行介绍。
需要说明的是,本发明实施例所提供的数据处理方式生成方法可以应用于互联网技术行业,例如,用于视频服务行业、电子商务行业、在线支付行业等等。
本发明实施例提供的数据处理方式生成方法的执行主体可以是电子设备,该电子设备例如可以是台式电脑、笔记本电脑、移动终端等设备,也可以是其他电子设备。
本发明实施例提供的数据处理方式生成方法包括以下步骤:
确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,上述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
获得各个目标实现算子的配置信息;
确定各个目标实现算子之间的数据流向;
以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到上述数据处理方式,其中,上述有向图中两个节点间有向连线的方向与上述两个节点所对应的目标实现算子间的数据流向一致。
使用本发明实施例提供的技术方案生成数据处理方式时,用户只需在图形化用户界面中选择目标实现算子、为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,电子设备即可生成用户所需的数据处理方式,无需用户针对所需的数据处理方式开发专门的应用,因此,使用本发明实施例提供的方案可以更快速、高效地生成数据处理方式。
下面,通过具体实施方式介绍对本发明实施例提供的数据处理方式生成方法。
如图1所示,本发明实施例提供的数据处理方式生成方法包括以下步骤S110~S140。
S110:确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子。
其中,上述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子。
上述功能算子库中可以包括各个实现算子,功能算子库可以通过图形化的方式展示在图形化用户界面中。用户可以从图像化用户界面所展示的功能算子库中选择所需的实现算子,电子设备可以将用户所选择的实现算子确定为目标实现算子。
上述图形化算子是指以图形化的方式所表示的实现算子。上述实现各种数据处理功能的算子可以包括:获取数据的算子、对数据进行过滤的算子、对数据进行合并的算子、对数据进行分割的算子、对数据进行输出的算子。上述实现各种数据处理功能的算子也可以包括实现其他数据处理功能的算子。
S120:获得各个目标实现算子的配置信息。
在一种实现方式中,用户可以在上述图形化用户界面中为各个目标实现算子输入配置信息,电子设备可以将用户为各个目标实现算子输入的配置信息确定为各个目标实现算子的配置信息。
在另一种实现方式中,功能算子库中存储的各个实现算子可以配置有预设配置信息,当用户未输入配置信息的目标实现算子,电子设备可以将目标实现算子的预设配置信息确定为该目标实现算子的配置信息。
对于不同的实现算子,配置信息通常也不同。在一个具体实现方式中,当上述实现算子为获取数据的算子时,上述配置信息可以是获取数据的接口标识;当上述实现算子为对数据进行过滤的算子时,上述配置信息可以是过滤条件;当上述实现算子为对数据进行合并的算子时,上述配置信息可以是所需合并的数据段或所需合并的数据的生成时间。
S130:确定各个目标实现算子之间的数据流向。
在一种实现方式中,电子设备可以根据用户选择各个目标实现算子时的选择顺序,确定各个目标实现算子之间的数据流向。
在另一种实现方式中,用户可以在上述图形化用户界面中布置各个目标实现算子之间的数据流向,电子设备可以将用户所布置的各个目标实现算子之间的数据流向确定为各个目标实现算子之间的数据流向。在一个具体实施例中,用户可以在图形化用户界面中绘制表示目标实现算子之间数据流向的图,电子设备可以获取用户在图形化用户界面中绘制的表示目标实现算子之间数据流向的图,并解析上述表示目标实现算子之间数据流向的图,得到各个目标实现算子之间的数据流向。
S140:以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到数据处理方式。
其中,上述有向图中两个节点间有向连线的方向与上述两个节点所对应的目标实现算子间的数据流向一致。
上述有向图可以为如图2所示的有向图,图2中,通过箭头来表示各节点间的数据流向。例如,标识为3298的算子与标识为3302算子间的数据流向为:由标识为3298的算子流向表示为3302算子。
使用本发明实施例提供的数据处理方式生成方法,用户可以通过图形化用户界面在功能算子库中选择待生成数据处理方式所需的目标实现算子,为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,这样,作为上述数据处理方式生成方法执行主体的电子设备在获取了用户输入的上述信息后,可以以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,其中,有向图中两个节点间有向连线的方向与两个节点所对应的目标实现算子间的数据流向一致,生成有向图后,即得到了用户所需的数据处理方式。
可见,使用本发明实施例提供的数据处理方式生成方法,用户只需在图形化用户界面中选择目标实现算子、为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,上述电子设备即可生成用户所需的数据处理方式,无需用户针对所需的数据处理方式开发专门的应用,因此,使用本发明实施例提供的方案可以更快速、高效地生成数据处理方式,同时使用户可以更灵活地设计数据处理作业。
使用本发明实施例提供的技术方案,由于各个算子具有相对独立性,因此,可以根据需要更新功能算子库中的各个算子,使得生成数据处理方式的方法的适用性更广、可扩展性也更强。
在一种实施方式中,可以基于Flink来生成上述数据处理方式。所生成的数据处理方式可以基于Flink Table API来进行数据传输,其中,上述Flink是一个分布式处理引擎,其可以在有界或无界数据流上进行有状态的计算,Flink Table API为Flink的一个数据服务的接口。在其他实施方式中,也可以基于其他服务平台生成上述数据处理方式。当得到数据处理方式后,可以解析每一个目标实现算子,将解析后的目标实现算子注册到FlinkTable Env中,其中,Flink Table Env是Flink的一个源数据中心。当将解析后的目标实现算子注册到Flink Table Env中后,更便于后续对数据处理方式的调用。
在一种实施方式中,当生成数据处理方式后,可以将数据处理方式生成Flink作业,并将Flink作业提交到Flink所对应的计算集群中,实现对所生成的Flink作业的计算或处理。
在一种实施方式中,上述有向图可以为有向无环图(Directed Acyclic Graph,简称DAG)。本实施方式通过DAG的方式来描述数据处理方式,可以使得数据处理方式更容易被解析出来,也更便于表示各个目标实现算子之间的数据流向。
在一种实施方式中,上述有向图可以通过对象简谱(java script objectnotation,简称json)的方式存储每一节点、每一节点的属性、以及节点间的有向连线。其中,是一种轻量级的数据交换格式。其中,json是一种数据交换语言,其采用完全独立于编程语言的文本格式来存储和表示数据,具有简洁和清晰的层次结构,本实施方式通过json的方式存储每一节点、每一节点的属性、以及节点间的有向连线,更易于人机器解析和生成上述有向图。
在一种实施方式中,步骤S110,可以按以下步骤实现:确定用户通过图形化用户界面、按照算子类型在功能算子库中选择的实现算子,其中,上述算子类型包括:数据读取类算子、数据转换类算子、数据输出类算子。
在本实施方式中,可以对功能算子库中的各个算子按照算子类型进行分类,将相同类型的功能算子划分在同一算子类型下。图形化用户界面中的图形化的功能算子库可以包括多个算子类型,每个算子类型可以包括一个或多个实现算子。用户可以确定生成数据处理方式所需的实现算子所属的算子类型,从图形化用户界面的各个所确定的算子类型包括的算子中选择实现算子。
上述数据读取类算子是用于读取待处理数据的实现算子,数据读取类算子的配置信息可以是所读取的数据的来源。数据的来源例如可以是公司内部的数据采集平台、kafka等。其中,kafka是一种高吞吐量的分布式发布订阅消息***。
上述数据转换类算子是用于对数据进行转换操作的算子,转换操作例如可以包括:数据过滤、数据融合、数据拼接、数据分割等操作中的至少一种,转换操作也可以包括其他对数据的操作。
上述数据输出类算子是用于输出处理后数据的算子,数据读取类算子的配置信息可以是所输出的数据所存储的***。数据所存储的***例如可以是kafka、分布式文件***(Hadoop Distributed File System,简称HDFS)、ElasticSearch(一种分布式搜索和分析引擎)等存储***。
本实施方式中,用户按照算子类型在功能算子库中选择的实现算子,更便于用户从功能算子库中的各个功能算子中选择需要的功能算子。
在一种实施方式中,在步骤S140之前,还可以包括以下步骤:判断是否获得了目标实现算子的配置信息,若没有获得目标实现算子的配置信息,则显示目标实现算子缺少配置信息的提示信息。本实施方式显示目标实现算子缺少配置信息的提示信息,可以使用户获知是否确定了目标实现算子的配置信息,使用户接收到提示信息后,可以对未确定配置信息的目标实现算子确定配置信息,从而使得生成的数据处理方式更准确、完整。
在一种实施方式中,步骤S140之后,还可以包括以下步骤:获取用户通过图形化用户界面输入的方式标识,为得到的数据处理方式添加上述方式标识。为得到的数据处理方式添加方式标识后,用户在进行数据处理时,更便于获取到所需的数据处理方式。
在一种实施方式中,步骤S140之前,还可以包括以下步骤C~D:
步骤C:优化各个目标实现算子,得到优化后算子以及各优化后算子的配置信息。
在一个具体实施例中,优化各个目标实现算子,可以包括以下至少一项:
合并实现相同功能的各个目标实现算子;
删除缺少配置信息的目标实现算子。
上述优化后算子的配置信息可以根据所优化的目标实现算子来确定。例如,目标实现算子1所实现的功能为:从待处理数据中筛选出符合条件a的数据,目标实现算子2所实现的功能为:从待处理数据中筛选出符合条件b的数据,那么可以合并目标实现算子1与目标实现算子2,得到优化后算子,所得到的优化后算子所实现的功能为:从待处理数据中筛选出同时符合条件a和条件b的数据。
在一个具体实施例中,可以使用StreamGragh/JobGragh生成器优化各个目标实现算子。
步骤D:根据各个目标实现算子之间的数据流向,确定各优化后算子之间的数据流向。
例如,步骤S130确定出的各个目标实现算子之间的数据流向为:目标实现算子1流向目标实现算子2,目标实现算子2流向目标实现算子3,目标实现算子3流向目标实现算子4。若优化各个目标实现算子的过程为:将目标实现算子2与目标实现算子3合并得到合并算子1,目标实现算子1和目标实现算子4不作改变,那么,得到的各优化后算子为:目标实现算子1、合并算子1、目标实现算子4,各优化后算子之间的数据流向为:目标实现算子1到合并算子1,合并算子1到目标实现算子4。
步骤S140,可以按以下步骤E实现:
步骤E:以每一优化后算子为节点、且以每一优化后算子的配置信息为优化后算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到上述数据处理方式,其中,有向图中两个节点间有向连线的方向与两个节点所对应的优化后算子间的数据流向一致。
本实施方式将各个目标实现算子进行优化后得到数据处理方式,可以减少使用所得到的数据处理方式处理数据的过程中的冗余步骤,使得所得到的数据处理方式更高效、快速的处理数据。
本发明实施例还提供了一种数据处理方法,该数据处理方法的执行主体可以是电子设备,该电子设备例如可以是台式电脑、笔记本电脑、移动终端等设备,也可以是其他电子设备。如图3所示,该方法包括以下步骤S310~S350。
S310:确定用于对待处理数据进行处理的数据处理方式,作为目标数据处理方式。
其中,上述数据处理方式是通过生成用于描述上述数据处理方式的有向图的方式生成的,上述有向图中:以上述数据处理方式包括的数据处理功能对应的实现算子为节点、每一实现算子的配置信息为实现算子所对应节点的属性、且两个节点间的有向连线的方向与上述两个节点所对应实现算子间的数据流向一致,上述实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子。
在一种实施方式中,电子设备可以选择与待处理数据相匹配的数据处理方式,作为目标数据处理方式。例如,当待处理数据为待处理视频时,电子设备可以选择进行视频处理的数据处理方式作为目标数据处理方式,当待处理数据为待处理图片时,电子设备可以选择进行图片处理的数据处理方式作为目标数据处理方式。
在另一种实施方式中,用户可以通过图形化用户界面选择用于对待处理数据进行处理的数据处理方式,电子设备可以将用户选择的数据处理方式,作为目标数据处理方式。
S320:获得用于描述上述目标数据处理方式的目标有向图。
在一种实施方式中,电子设备可以将上述目标数据处理方式包括的有向图,作为目标有向图。在一种具体实施方式中,电子设备可以解析上述目标数据处理方式,得到目标数据处理方式所包括的有向图,作为目标有向图。
S330:解析上述目标有向图,得到上述目标有向图中各个节点对应的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向。
S340:以各个目标实现算子的配置信息配置各个目标实现算子。
S350:按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对上述待处理数据进行处理。
使用本发明实施例提供的技术方案当用户在功能算子库中选择了待生成数据处理方式所需的目标实现算子,并为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向后,电子设备即可以以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,生成有向图后,电子设备即得到了用户所需的数据处理方式。在进行进行数据处理时,确定了用于对待处理数据进行处理的数据处理方式,解析所确定的数据处理方式中包括的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向后,以各个目标实现算子的配置信息配置各个目标实现算子,即可按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理。
可见,使用本发明实施例提供的数据处理方法,用户只需选择目标实现算子、为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,电子设备即可生成用户所需的数据处理方式,用户即可用所生成的数据处理方式对数据进行处理,无需用户针对待处理的数据开发专门的应用,因此,使用本发明实施例提供的方案可以更快速、高效地生成数据处理方式,从而使用户可以更便捷、灵活和高效地对数据进行处理。
在一种实施方式中,如图4所示,步骤S350,可以按以下步骤S351~S352实现。
S351:针对每一目标实现算子,若存在数据流向指向该目标实现算子的父算子,获取使用上述父算子对其输入数据进行数据处理的父处理结果,并使用该目标实现算子对上述父处理结果进行处理。
父算子的数据输入是指数据流向指向该父算子的算子进行数据处理后输出的数据。
S352:针对每一目标实现算子,若不存在数据流向指向该目标实现算子的父算子,使用该目标实现算子对待处理数据进行处理。
例如,如图2所示,3302算子、3300算子、3299算子以及3301算子存在数据流向指向这些目标实现算子的父算子,3298算子不存在数据流向指向该目标实现算子的父算子。
3302算子的父算子为3298算子,3302算子的父处理结果为3298算子进行数据处理的处理结果,在进行数据处理时,3302算子对3298算子的处理结果进行处理,3298算子对待处理数据进行处理。
在一种实施方式中,步骤S351中,可以按以下步骤对上述父处理结果进行处理:
使用该目标实现算子对所述父处理结果进行处理,得到数据流;
利用流表对偶性原理将上述数据流转换为流表;
步骤S352中,可以按以下步骤对待处理数据进行处理:
使用该目标实现算子对所述待处理数据进行处理,得到数据流;
利用流表对偶性原理将上述数据流转换为流表。
在本实施方式中,目标实现算子进行数据处理得到数据流后,将得到的数据流转换为流表,更便于处理结果在以有向图形式描述的数据处理方式的各个目标实现算子之间进行转换。
在一种实施方式中,步骤S351中,父算子进行数据处理的父处理结果可以按以下步骤A~B获取:
步骤A:判断是否已使用该目标实现算子的各父算子对其输入数据进行了数据处理;
步骤B:若步骤A的判断结果为是,则获取获取使用各父算子对其输入数据进行数据处理的父处理结果。
对于一个目标实现算子,其可能存在不止一个父算子。例如,如图5所示,算子4的父算子为:算子1、算子2和算子3这三个算子。这种情况下,为了使目标实现算子获取更完整的父处理结果,从而使数据处理更准确,目标实现算子可以在已使用该目标实现算子的各父算子对其输入数据进行了数据处理后,再获取各个父算子进行数据处理的父处理结果。
本发明实施例还提供了一种数据处理方式生成装置,如图6所示,所述装置包括:
算子确定单元610,用于确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,所述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
配置获得单元620,用于获得各个目标实现算子的配置信息;
流向确定单元630,用于确定各个目标实现算子之间的数据流向;
方式生成单元640,用于以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到所述数据处理方式,其中,所述有向图中两个节点间有向连线的方向与所述两个节点所对应的目标实现算子间的数据流向一致。
可见,使用本发明实施例提供的数据处理方式生成装置,用户只需在图形化用户界面中选择目标实现算子、为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,上述电子设备即可生成用户所需的数据处理方式,无需用户针对所需的数据处理方式开发专门的应用,因此,使用本发明实施例提供的方案可以更快速、高效地生成数据处理方式,同时使用户可以更灵活地设计数据处理作业。
在一种实施方式中,所述有向图可以为:有向无环图DAG。
在一种实施方式中,所述算子确定单元610,具体可以用于:
确定用户通过图形化用户界面、按照算子类型在功能算子库中选择的实现算子,其中,所述算子类型包括:数据读取类算子、数据转换类算子、数据输出类算子。
本发明实施例还提供了一种数据处理装置,如图7所示,所述装置包括:
方式确定单元710,用于确定用于对待处理数据进行处理的数据处理方式,作为目标数据处理方式,其中,所述数据处理方式是通过生成用于描述所述数据处理方式的有向图的方式生成的,所述有向图中:以所述数据处理方式包括的数据处理功能对应的实现算子为节点、每一实现算子的配置信息为实现算子所对应节点的属性、且两个节点间的有向连线的方向与所述两个节点所对应实现算子间的数据流向一致,所述实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
有向图获得单元720,用于获得用于描述所述目标数据处理方式的目标有向图;
有向图解析单元730,用于解析所述目标有向图,得到所述目标有向图中各个节点对应的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向;
算子配置单元740,用于以各个目标实现算子的配置信息配置各个目标实现算子;
数据处理单元750,用于按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理。
使用本发明实施例提供的数据处理装置,用户只需选择目标实现算子、为每个目标实现算子输入配置信息以及确定各个目标实现算子之间的数据流向,电子设备即可生成用户所需的数据处理方式,用户即可用所生成的数据处理方式对数据进行处理,无需用户针对待处理的数据开发专门的应用,因此,使用本发明实施例提供的方案可以更快速、高效地生成数据处理方式,从而使用户可以更便捷、灵活和高效地对数据进行处理。
在一种实施方式中,所述数据处理单元750,可以包括:
第一数据处理子单元,用于针对每一目标实现算子,若存在数据流向指向该目标实现算子的父算子,获取使用所述父算子对其输入数据进行数据处理的父处理结果,并使用该目标实现算子对所述父处理结果进行处理;
第二数据处理子单元,用于针对每一目标实现算子,若不存在数据流向指向该目标实现算子的父算子,使用该目标实现算子对所述待处理数据进行处理。
在一种实施方式中,所述第一数据处理子单元,具体可以用于:
使用该目标实现算子对所述父处理结果进行处理,得到数据流;
利用流表对偶性原理将所述数据流转换为流表;
所述第二数据处理子单元,具体可以用于:
使用该目标实现算子对所述待处理数据进行处理,得到数据流;
利用流表对偶性原理将所述数据流转换为流表。
在一种实施方式中,所述第一数据处理子单元,具体可以用于:
判断是否已使用该目标实现算子的各父算子对其输入数据进行了数据处理;
若为是,则获取使用各父算子对其输入数据进行数据处理的父处理结果。
本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801、通信接口802、存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现上述任一项提供的数据处理方式生成方法。
本发明实施例还提供了一种电子设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901、通信接口902、存储器903通过通信总线904完成相互间的通信,
存储器903,用于存放计算机程序;
处理器901,用于执行存储器903上所存放的程序时,实现上述任一项提供的数据处理方法。
上述电子设备中提到的通信总线可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项提供的数据处理方式生成方法。
本发明实施例提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项提供的数据处理方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一项提供的数据处理方式生成方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一项提供的数据处理方法。
对于装置/电子设备/存储介质/程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/电子设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种数据处理方式生成方法,其特征在于,所述方法包括:
确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,所述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
获得各个目标实现算子的配置信息;
确定各个目标实现算子之间的数据流向;
以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到所述数据处理方式,其中,所述有向图中两个节点间有向连线的方向与所述两个节点所对应的目标实现算子间的数据流向一致。
2.根据权利要求1所述的方法,其特征在于,
所述有向图为:有向无环图DAG。
3.根据权利要求1或2所述的方法,其特征在于,所述确定用户通过图形化用户界面在功能算子库中选择的实现算子,包括:
确定用户通过图形化用户界面、按照算子类型在功能算子库中选择的实现算子,其中,所述算子类型包括:数据读取类算子、数据转换类算子、数据输出类算子。
4.一种数据处理方法,其特征在于,所述方法包括:
确定用于对待处理数据进行处理的数据处理方式,作为目标数据处理方式,其中,所述数据处理方式是通过生成用于描述所述数据处理方式的有向图的方式生成的,所述有向图中:以所述数据处理方式包括的数据处理功能对应的实现算子为节点、每一实现算子的配置信息为实现算子所对应节点的属性、且两个节点间的有向连线的方向与所述两个节点所对应实现算子间的数据流向一致,所述实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
获得用于描述所述目标数据处理方式的目标有向图;
解析所述目标有向图,得到所述目标有向图中各个节点对应的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向;
以各个目标实现算子的配置信息配置各个目标实现算子;
按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理。
5.根据权利要求4所述的方法,其特征在于,所述按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理,包括:
针对每一目标实现算子,若存在数据流向指向该目标实现算子的父算子,获取使用所述父算子对其输入数据进行数据处理的父处理结果,并使用该目标实现算子对所述父处理结果进行处理;
针对每一目标实现算子,若不存在数据流向指向该目标实现算子的父算子,使用该目标实现算子对所述待处理数据进行处理。
6.根据权利要求5所述的方法,其特征在于,所述使用该目标实现算子对所述父处理结果进行处理,包括:
使用该目标实现算子对所述父处理结果进行处理,得到数据流;
利用流表对偶性原理将所述数据流转换为流表;
所述使用该目标实现算子对所述待处理数据进行处理,包括:
使用该目标实现算子对所述待处理数据进行处理,得到数据流;
利用流表对偶性原理将所述数据流转换为流表。
7.根据权利要求5所述的方法,其特征在于,所述获取使用所述父算子对其输入数据进行数据处理的父处理结果,包括:
判断是否已使用该目标实现算子的各父算子对其输入数据进行了数据处理;
若为是,则获取使用各父算子对其输入数据进行数据处理的父处理结果。
8.一种数据处理方式生成装置,其特征在于,所述装置包括:
算子确定单元,用于确定用户通过图形化用户界面在功能算子库中选择的实现算子,作为目标实现算子,其中,所述功能算子库中存储的实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
配置获得单元,用于获得各个目标实现算子的配置信息;
流向确定单元,用于确定各个目标实现算子之间的数据流向;
方式生成单元,用于以每一目标实现算子为节点、且以每一目标实现算子的配置信息为目标实现算子所对应节点的属性,生成用于描述数据处理方式的有向图,进而得到所述数据处理方式,其中,所述有向图中两个节点间有向连线的方向与所述两个节点所对应的目标实现算子间的数据流向一致。
9.一种数据处理装置,其特征在于,所述装置包括:
方式确定单元,用于确定用于对待处理数据进行处理的数据处理方式,作为目标数据处理方式,其中,所述数据处理方式是通过生成用于描述所述数据处理方式的有向图的方式生成的,所述有向图中:以所述数据处理方式包括的数据处理功能对应的实现算子为节点、每一实现算子的配置信息为实现算子所对应节点的属性、且两个节点间的有向连线的方向与所述两个节点所对应实现算子间的数据流向一致,所述实现算子为:预先对用于实现各种数据处理功能的算子进行封装得到的图形化算子;
有向图获得单元,用于获得用于描述所述目标数据处理方式的目标有向图;
有向图解析单元,用于解析所述目标有向图,得到所述目标有向图中各个节点对应的目标实现算子、各个目标实现算子的配置信息、各个目标实现算子之间的数据流向;
算子配置单元,用于以各个目标实现算子的配置信息配置各个目标实现算子;
数据处理单元,用于按照各个目标实现算子之间的数据流向,依次使用各个目标实现算子对所述待处理数据进行处理。
10.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-3任一项所述的数据处理方式生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010196002.8A CN111324345A (zh) | 2020-03-19 | 2020-03-19 | 数据处理方式生成方法、数据处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010196002.8A CN111324345A (zh) | 2020-03-19 | 2020-03-19 | 数据处理方式生成方法、数据处理方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111324345A true CN111324345A (zh) | 2020-06-23 |
Family
ID=71173446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010196002.8A Pending CN111324345A (zh) | 2020-03-19 | 2020-03-19 | 数据处理方式生成方法、数据处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111324345A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270399A (zh) * | 2020-09-29 | 2021-01-26 | 北京百度网讯科技有限公司 | 基于深度学习的算子注册处理方法、装置及电子设备 |
CN115145965A (zh) * | 2022-09-01 | 2022-10-04 | 浙江大华技术股份有限公司 | 数据流的生成方法、电子设备及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160112830A (ko) * | 2015-03-20 | 2016-09-28 | 한국전자통신연구원 | 최적화된 태스크 기반 데이터 처리 서비스 생성 방법 및 장치 |
CN107621934A (zh) * | 2017-07-28 | 2018-01-23 | 中国人民解放军国防信息学院 | 基于组件化、图形化算子的评估指标计算方法及装置 |
CN107678790A (zh) * | 2016-07-29 | 2018-02-09 | 华为技术有限公司 | 流计算方法、装置及*** |
CN108628605A (zh) * | 2018-04-28 | 2018-10-09 | 百度在线网络技术(北京)有限公司 | 流式数据处理方法、装置、服务器和介质 |
CN109145023A (zh) * | 2018-08-30 | 2019-01-04 | 北京百度网讯科技有限公司 | 用于处理数据的方法和装置 |
CN109726216A (zh) * | 2018-12-29 | 2019-05-07 | 北京九章云极科技有限公司 | 一种基于有向无环图的数据处理方法和处理*** |
-
2020
- 2020-03-19 CN CN202010196002.8A patent/CN111324345A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160112830A (ko) * | 2015-03-20 | 2016-09-28 | 한국전자통신연구원 | 최적화된 태스크 기반 데이터 처리 서비스 생성 방법 및 장치 |
CN107678790A (zh) * | 2016-07-29 | 2018-02-09 | 华为技术有限公司 | 流计算方法、装置及*** |
CN107621934A (zh) * | 2017-07-28 | 2018-01-23 | 中国人民解放军国防信息学院 | 基于组件化、图形化算子的评估指标计算方法及装置 |
CN108628605A (zh) * | 2018-04-28 | 2018-10-09 | 百度在线网络技术(北京)有限公司 | 流式数据处理方法、装置、服务器和介质 |
CN109145023A (zh) * | 2018-08-30 | 2019-01-04 | 北京百度网讯科技有限公司 | 用于处理数据的方法和装置 |
CN109726216A (zh) * | 2018-12-29 | 2019-05-07 | 北京九章云极科技有限公司 | 一种基于有向无环图的数据处理方法和处理*** |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270399A (zh) * | 2020-09-29 | 2021-01-26 | 北京百度网讯科技有限公司 | 基于深度学习的算子注册处理方法、装置及电子设备 |
CN112270399B (zh) * | 2020-09-29 | 2022-03-11 | 北京百度网讯科技有限公司 | 基于深度学习的算子注册处理方法、装置及电子设备 |
CN115145965A (zh) * | 2022-09-01 | 2022-10-04 | 浙江大华技术股份有限公司 | 数据流的生成方法、电子设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104536729A (zh) | 一种实现在浏览器页面中进行截图的方法和装置 | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN111324345A (zh) | 数据处理方式生成方法、数据处理方法、装置及电子设备 | |
CN114594927A (zh) | 低代码开发方法、装置、***、服务器及存储介质 | |
WO2023284505A1 (zh) | 扫码支付的方法及装置 | |
CN113298331A (zh) | 一种工单处理方法、装置、***及电子设备 | |
CN111767229A (zh) | 性能测试方法、装置和设备 | |
CN111666100A (zh) | 软件框架生成方法、装置、电子设备及存储介质 | |
CN112965711A (zh) | 作业测试方法和装置、电子设备和存储介质 | |
CN110704099B (zh) | 联盟链的构建方法、装置和电子设备 | |
CN111221525A (zh) | 一种脚本代码的生成方法、装置、电子设备及存储介质 | |
JP2019101889A (ja) | テスト実行装置及びプログラム | |
CN117251157A (zh) | 一种用户界面生成方法、装置、设备及介质 | |
CN112507216B (zh) | 一种数据对象推荐方法、装置、设备和存储介质 | |
CN110825461A (zh) | 数据处理方法和装置 | |
CN114449063A (zh) | 一种报文处理方法、装置及设备 | |
CN113971251A (zh) | 网页输出方法、***及计算机可读存储介质 | |
CN115543263A (zh) | 脚本生成方法、装置、设备及介质 | |
CN109376289B (zh) | 一种应用搜索结果中确定目标应用排位的确定方法及装置 | |
CN112540820A (zh) | 一种用户界面的更新方法、装置及电子设备 | |
CN113626301A (zh) | 生成测试脚本的方法和装置 | |
CN112328837A (zh) | 数据展示方法、装置、设备及存储介质 | |
CN115658749B (zh) | 基于有向无环图的基金产品排序方法、装置和电子设备 | |
CN110674386A (zh) | 资源推荐方法、装置及存储介质 | |
CN111142846B (zh) | 组件开发方法、装置及***、移动终端和可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |