CN112925624A - 一种数据处理任务的配置方法以及装置 - Google Patents
一种数据处理任务的配置方法以及装置 Download PDFInfo
- Publication number
- CN112925624A CN112925624A CN202110287307.4A CN202110287307A CN112925624A CN 112925624 A CN112925624 A CN 112925624A CN 202110287307 A CN202110287307 A CN 202110287307A CN 112925624 A CN112925624 A CN 112925624A
- Authority
- CN
- China
- Prior art keywords
- data processing
- task
- processing task
- execution
- initial
- 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
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000011144 upstream manufacturing Methods 0.000 claims description 48
- 238000001514 detection method Methods 0.000 claims description 33
- 125000004122 cyclic group Chemical group 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 15
- 230000001419 dependent effect Effects 0.000 claims description 12
- 238000013515 script Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000000737 periodic effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种数据处理任务的配置方法,该方法可以根据所述若干数据处理任务之间的上下游关系对所述若干数据处理任务进行整理得到所述数据处理任务配置信息对应的任务配置结果(即对所述若干数据处理任务进行了整理、整合)从而提高了任务配置结果的简洁性和使用便捷性,以及,对所述初始任务配置流程对应的循环依赖检测结果进行合理性校验,以提高所确定的所述数据处理任务配置信息对应的任务配置结果的准确性以及合理性,这样,本申请可以提高数据处理任务的配置的效率、准确性以及便捷性,进而提高了用户体验。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种数据处理任务的配置方法、装置。
背景技术
在数据仓库、数据中心、数据中台等数据治理类型的项目中,存在大量的数据处理功能模块/脚本,分别实现数据的采、存、用的功能,这些模块、脚本在执行过程中存在互相依赖的关系,共同形成数据治理流程。
当前业界通常使用开源工具(如kettle)或自研产品进行流程编排,流程中的依赖关系、触发时机都依靠数据治理人员人工维护,这种方式在中小型项目中可以顺利支撑,当业务量较大时(千、万级任务量),面临以下问题:
1、难以判断任务的上下游依赖,难以确定可执行时间;
2、手工制定的流程为了便于构思,通常使用固化步骤节点的方式进行分阶段,处理效率达不到最优;
3、传统流程编排采用统一周期触发,日、周、月等不同周期时,需要将同一任务改编多次,以适应不同的周期需求,并分别配置到对应的周期流程中,多套流程执行时容易引发冲突,并且维护复杂;
4、业界常用工具都是使用分级流程,缺乏完整明细步骤视图,维护复杂。
故此,亟需一种新的数据ID的生成方案。
发明内容
本申请提供一种数据处理任务的配置方法,以实现提高数据处理任务的配置的效率、准确性以及便捷性,进而提高了用户体验。
第一方面,本申请提供了一种数据处理任务的配置方法,所述方法包括:
获取数据处理任务配置信息;
根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;
根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;
若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
第二方面,本申请提供了一种数据处理任务的配置方法,所述装置包括:
信息获取单元,用于获取数据处理任务配置信息;
关系确定单元,用于根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;
流程确定单元,用于根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;
结果确定单元,用于若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
第三方面,本申请提供了一种可读介质,包括执行指令,当电子设备的处理器执行所述执行指令时,所述电子设备执行如第一方面中任一所述的方法。
第四方面,本申请提供了一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行如第一方面中任一所述的方法。
由上述技术方案可以看出,本申请提供了一种数据处理任务的配置方法,所述方法包括:获取数据处理任务配置信息;根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。可见,本申请中可以根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系,即可以对所述数据处理任务配置信息进行分析,识别出所述数据处理任务配置信息中若干数据处理任务之间的上下游关系,并可以根据所述若干数据处理任务之间的上下游关系对所述若干数据处理任务进行整理得到所述数据处理任务配置信息对应的任务配置结果(即对所述若干数据处理任务进行了整理、整合)从而提高了任务配置结果的简洁性和使用便捷性,以及,对所述初始任务配置流程对应的循环依赖检测结果进行合理性校验,以提高所确定的所述数据处理任务配置信息对应的任务配置结果的准确性以及合理性,这样,本申请可以提高数据处理任务的配置的效率、准确性以及便捷性,进而提高了用户体验。
上述的非惯用的优选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
为了更清楚地说明本申请实施例或现有的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一种数据处理任务的配置方法的流程示意图;
图2a为本申请一实施例提供的一种任务配置结果的示意图;
图2b为本申请一实施例提供的一种任务配置结果的示意图;
图3为本申请一实施例提供的一种数据处理任务的配置装置的结构示意图;
图4为本申请一实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本申请的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面结合附图,详细说明本申请的各种非限制性实施方式。
参见图1,示出了本申请实施例中的一种数据处理任务的配置方法,本申请可以应用在具有数据处理任务的配置功能的设备中,例如客户端、终端设备或者服务器等。在本实施例中,所述方法例如可以包括以下步骤:
S101:获取数据处理任务配置信息。
在本实施例中,数据处理任务配置信息可以理解为需要进行配置的数据处理任务的相关信息;比如,数据处理任务配置信息至少可以包括若干数据处理任务,且每个数据处理任务中至少可以包括任务处理脚本,任务处理脚本中可以包括具体的任务信息,举例来说,任务处理脚本中所包括的具体的任务信息可以包括数据处理任务各自分别对应的目标信息和源信息。需要说明的是,例如,数据处理任务可以为生产经营过程中需要处理的生产经营数据处理任务,举例来说,可以为生产数据处理任务、经营数据处理任务等。需要说明的是,在本实施例中,若干可以理解为一个或多个。
作为一种示例,用户可以通过预设的客户端或者操作界面,输入待配置的数据处理任务配置信息,从而可以获取数据处理任务配置信息。
S102:根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系。
在本实施例中,在获取到所述数据处理任务配置信息后,可以先根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务。然后,可以根据各个数据处理任务中的具体的任务信息,确定各个数据处理任务之间的上下游关系。
作为一种示例,可以先获取所述数据处理任务配置信息中的若干数据处理任务,举例来说,可以先获取所述数据处理任务配置信息中的任务处理脚本。然后,可以确定所述若干数据处理任务中各个数据处理任务各自分别对应的目标信息和源信息,举例来说,可以从数据处理任务配置信息中的任务处理脚本获取目标表(即目标信息)和源表(即源信息),需要说明的是,在对任务处理脚本进行解析的过程中,融合了文本语义识别技术,支持对Sql(Structured Query Language,结构化查询语言)、Flume、Datax(业界流行的数据同步工具)的配置解析,实现智能依赖识别;在一种实现方式中,目标信息可以反映下游数据处理任务,源信息可以反映上游数据处理任务;需要说明的是,若数据处理任务中只包括目标信息,这说明该数据处理任务只有下游数据处理任务,而没有上游数据处理任务,若数据处理任务中只包括源信息,这说明该数据处理任务只有上游数据处理任务,而没有下游数据处理任务,若数据处理任务中包括目标信息和源信息,这说明该数据处理任务有上游数据处理任务和下游数据处理任务;可以理解的是,下游数据处理任务可以接收其对应的上游数据处理任务所发送的数据信息,上、下游数据处理任务是相对于两个在流程节点上相邻的数据处理任务之间所区分的。接着,可以根据所述若干数据处理任务中各个数据处理任务各自分别对应的目标信息和源信息,确定所述若干数据处理任务之间的上下游关系,具体地,针对第一数据处理任务而言,若其包括目标信息和源信息,若第二数据处理任务的目标信息和第一数据处理任务的源信息是相同的,则说明第二数据处理任务为第一数据处理任务的下游数据处理任务,若第一数据处理任务的源信息和第三数据处理任务的目标信息是相同的,则说明第三数据处理任务为第一数据处理任务的上游数据处理任务;假设,任务A:insert into T_a select*from T_b where……,任务B:insert into T_c select*from T_a where……,系统自动解析A的源表是T_b,目标表是T_a,B的源表是T_a,所以可以判断出A——>B的一个依赖关系,即A执行完了以后再执行B,其中,源表可以有多个,对应出多个依赖关系;以图2a举例说明,数据处理任务B为数据处理任务A和数据处理任务B的下游数据处理任务(即数据处理任务B的源信息均与数据处理任务A、数据处理任务E中的目标信息相同),数据处理任务C为数据处理任务A的下游数据处理任务(即数据处理任务C的源信息均与数据处理任务A中的目标信息相同),数据处理任务D为数据处理任务C的下游数据处理任务(即数据处理任务D的源信息均与数据处理任务C中的目标信息相同)。
S103:根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程。
在本实施例中,在确定所述若干数据处理任务之间的上下游关系之后,可以根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程。例如,可以根据所述若干数据处理任务之间的上下游关系,在所述若干数据处理任务之间建立上下游关系连接,得到所述初始任务配置流程,在一种实现方式中,初始任务配置流程可以是根据所有数据处理任务之间的上下游关系,融合组成的一张依赖网图,也就是全局一张图。继续以图2a为例,在确定数据处理任务A、B、C、D、E之间的上下游关系之后,可以在数据处理任务A、B、C、D、E之间建立上下游关系连接,得到如图2a所示的初始任务配置流程。
S104:若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
在本实施例中,所述预设条件可以为:所述初始任务配置流程对应的循环依赖检测结果中不存在闭环循环的任务流,且所述初始任务配置流程中的起始数据处理任务具有执行启动条件。其中,闭环循环的任务流可以理解为死循环的任务流,例如,数据处理任务A的下游数据处理任务为数据处理任务B,数据处理任务B的下游数据处理任务为数据处理任务C,数据处理任务C的下游数据处理任务为数据处理任务A。在本实施例中,起始数据处理任务可以理解为没有上游数据处理任务(即不包括源信息)的数据处理任务,可以理解的是,起始数据处理任务例如从文件导入、从消息队列导入等的任务,起始数据处理任务没有源表,只有目标表,例如,图2a中的数据处理任务A、E为起始数据处理任务。需要说明的是,所述初始任务配置流程中的起始数据处理任务均应该具有执行启动条件,否则无法启动执行起始数据处理任务,其中,执行启动条件可以理解为执行起始数据处理任务的条件,例如,定时启动,举例来说,起始数据处理任务固定设置在每天早上九点执行。
具体地,可以先检测所述初始任务配置流程对应的循环依赖检测结果中是否存在闭环循环的任务流,以及,所述循环依赖检测结果中的每个起始数据处理任务是否均具有执行启动条件。若所述循环依赖检测结果中不存在闭环循环的任务流,以及,所述循环依赖检测结果中的每个起始数据处理任务均具有执行启动条件,则可以根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。需要说明的是,可以直接将数据处理任务配置信息对应的初始任务配置流程作为所述数据处理任务配置信息对应的任务配置结果;也可以对数据处理任务配置信息对应的初始任务配置流程中的相邻的数据处理任务通过简单的合并,将若干个相邻的数据处理任务定义为“子任务流”,即将若干个相邻的数据处理任务合并为一个子任务流,从而将合并为子任务流后的初始任务配置流程作为所述数据处理任务配置信息对应的任务配置结果,例如,如图2b所示,可以将初始任务配置流程中相邻的数据处理任务S、E、A、C合并为子任务流X之后所得到的初始任务配置流程作为所述数据处理任务配置信息对应的任务配置结果,这样,可实现数据处理任务的合并与拆分,再配合前端的流程自动排版技术,实现了任务配置结果完整流程一张图展示(即整体成百上千任务节点的有向无环图,通过子任务流的合并,支持折叠展开,可以在单张任务配置结果上方便的看到系统内所有的任务),支持数据处理任务的任意展开和合并。还需要说明的是,子任务流是为了方便查看,允许将相邻的任务组合成一个子任务流节点,因为定义全局的所有任务是一张有向无环图的总任务流,所以里面折叠组合的都是子任务流,仅用于展示。
在一种实现方式中,所述方法还可以包括:
若所述初始任务配置流程对应的循环依赖检测结果不满足所述预设条件,则根据所述循环依赖检测结果确定配置失败原因,以及,根据所述配置失败原因输出配置失败提示。
具体地,若所述初始任务配置流程对应的循环依赖检测结果中存在闭环循环的任务流,和/或所述初始任务配置流程中的起始数据处理任务不具有执行启动条件,则可以确定配置失败原因,比如存在闭环循环的任务流和/或起始数据处理任务不具有执行启动条件,则可以根据所述配置失败原因输出配置失败提示,以提醒用户对起始数据处理任务进行调整,例如增加上游数据处理任务或者增加执行启动条件。
由上述技术方案可以看出,本申请提供了一种数据处理任务的配置方法,所述方法包括:获取数据处理任务配置信息;根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。可见,本申请中可以根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系,即可以对所述数据处理任务配置信息进行分析,识别出所述数据处理任务配置信息中若干数据处理任务之间的上下游关系,并可以根据所述若干数据处理任务之间的上下游关系对所述若干数据处理任务进行整理得到所述数据处理任务配置信息对应的任务配置结果(即对所述若干数据处理任务进行了整理、整合)从而提高了任务配置结果的简洁性和使用便捷性,以及,对所述初始任务配置流程对应的循环依赖检测结果进行合理性校验,以提高所确定的所述数据处理任务配置信息对应的任务配置结果的准确性以及合理性,这样,本申请可以提高数据处理任务的配置的效率、准确性以及便捷性,进而提高了用户体验。
需要说明的是,在本实施例中,完成数据处理任务的配置之后,可以执行任务配置结果。接下来,将介绍任务配置结果的执行方法,先需要说明的是,所述数据处理任务配置信息还包括各个数据处理任务各自分别对应的触发执行信息,其中,数据处理任务对应的触发执行信息可以理解为触发执行数据处理任务的条件信息,即需要满足数据处理任务对应的触发执行信息之后才可以触发执行数据处理任务。具体地,在S104之后,图1所示的方法还包括:
根据各个数据处理任务各自分别对应的触发执行信息,分别触发各个数据处理任务。
在本实施例中,可以先从数据处理任务配置信息中获取各个数据处理任务各自分别对应的触发执行信息,接着,再根据各个数据处理任务各自分别对应的触发执行信息,对各个数据处理任务进行触发。需要说明的是,在本实施例的一种实现方式中,可以周期性扫描获取更新的任务配置结果。
具体地,针对每一个数据处理任务,可以先获取该数据处理任务对应的执行参数,其中,执行参数可以理解为需要执行该数据处理任务时的情况信息,比如执行任务的当前时间等。然后,可以根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务。需要说明的是,每个数据处理任务完成执行后均回调通知执行结果。
在一种实现方式中,若该数据处理任务对应的任务类型为起始数据处理任务,该数据处理任务对应的触发执行信息包括任务触发接口、执行周期和执行启动条件,该数据处理任务对应的执行参数包括执行任务的当前时刻、当前环境参数。
执行周期,可以分为以下类型:单次任务、周期定时/不定时任务、无周期纯依赖任务;举例来说,单次任务可以为立即执行或某年某月某日执行一次,例如,2020年11月24日9时整执行一次;周期定时任务可以为每周期执行一次(年季月周日时分秒),例如,每天凌晨4时执行一次,每小时的10分钟执行一次;周期不定时任务:每周期执行一次,需要有上游数据处理任务依赖,例如,每天执行一次,待上游数据处理任务完成后立刻执行;无周期纯依赖任务可以为每次上有全部依赖执行完成后立刻执行,例如,上有任务全部完成后立刻执行。需要强调的是,在本实施例中,在任务执行阶段支持了不同周期的任务混排,为了支持以上混排,系统定义了当期任务的概念,根据每个任务的周期和时间配置,上下游依赖,计算出每个任务的执行周期,再结合上次完成时间判断当期任务是否已完成,从而决策流程走向,例如,某数据处理任务每月1日执行一次,今天为11月24日,则“当期”为11月1日-11月30日,上次执行时间为11月1日,执行结果是成功,则判断当期任务已完成。可以理解的是,本实施例中,不同周期的数据处理任务互相依赖,可以依据任务自身的周期来计算是否可以执行了,例如,图2a中的数据处理任务A的任务配置是每小时执行一次,数据处理任务C任务配置是每天执行一次,数据处理任务A每次执行完成后都会通知数据处理任务C执行,数据处理任务C首先判断其的依赖,只有数据处理任务A执行完成,依赖通过,数据处理任务C再判断当前时间和其上次执行成功时间,3/121:00:00,当前如果是3/12的其他时间,则不执行,到了3/13的时间,就会判断可以执行并立刻调度启动数据处理任务C的执行,其他周期同理。
执行启动条件,可以理解为触发执行数据处理任务的具体条件信息,例如,定时启动,举例来说,起始数据处理任务固定设置在每天早上九点执行。具体的执行启动条件可以根据实际情况进行设定。每个数据处理任务的执行启动条件可以是不同的。
相应地,所述根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务,包括:
若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务,即在该数据处理任务对应的执行周期内,调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
在一种实现方式中,若该数据处理任务对应的任务类型为非起始数据处理任务(即存在上游数据处理任务,或者,存在上游数据处理任务和下游数据处理任务的数据处理任务),该数据处理任务对应的触发执行信息包括任务触发接口、执行周期,和/或执行启动条件(即触发执行信息包括任务触发接口、执行周期,或者,触发执行信息包括任务触发接口、执行周期和执行启动条件),该数据处理任务对应的执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况,和/或当前环境参数(即执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况,或者,执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况和当前环境参数)。
相应地,所述根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务,包括:
若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,和/或,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务,即在该数据处理任务对应的执行周期内,调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
作为一种示例,可以先判断当前时刻是否满足该数据处理任务对应的执行周期,若是,则继续判断该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,若是,则根据触发执行信息是否包括执行启动条件,确定是否需要判断该数据处理任务对应的当前环境参数是否满足该数据处理任务对应的执行启动条件。若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,和/或,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务,即在该数据处理任务对应的执行周期内,调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
具体地,当触发执行信息包括任务触发接口、执行周期,执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况,若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务,即在该数据处理任务对应的执行周期内,调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
当触发执行信息包括任务触发接口、执行周期和执行启动条件,执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况和当前环境参数,若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,和,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务,即在该数据处理任务对应的执行周期内,调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
如图3所示,为本申请所述一种数据处理任务的配置装置的一个具体实施例。本实施例所述装置,即用于执行上述实施例所述方法的实体装置。其技术方案本质上与上述实施例一致,上述实施例中的相应描述同样适用于本实施例中。本实施例中所述装置包括:
信息获取单元301,用于获取数据处理任务配置信息;
关系确定单元302,用于根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;
流程确定单元303,用于根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;
结果确定单元304,用于若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
可选的,所述数据处理任务配置信息包括若干数据处理任务;所述关系确定单元302,具体用于:
获取所述数据处理任务配置信息中的若干数据处理任务;
确定所述若干数据处理任务中各个数据处理任务各自分别对应的目标信息和源信息;
根据所述若干数据处理任务中各个数据处理任务各自分别对应的目标信息和源信息,确定所述若干数据处理任务之间的上下游关系。
可选的,所述流程确定单元303,具体用于:
根据所述若干数据处理任务之间的上下游关系,在所述若干数据处理任务之间建立上下游关系连接,得到所述初始任务配置流程。
可选的,所述预设条件为:所述初始任务配置流程对应的循环依赖检测结果中不存在闭环循环的任务流,且所述初始任务配置流程中的起始数据处理任务具有执行启动条件;
相应地,所述结果确定单元304,具体用于:
检测所述初始任务配置流程对应的循环依赖检测结果中是否存在闭环循环的任务流,以及,所述循环依赖检测结果中的每个起始数据处理任务是否均具有执行启动条件;
若所述循环依赖检测结果中不存在闭环循环的任务流,以及,所述循环依赖检测结果中的每个起始数据处理任务均具有执行启动条件,则根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
可选的,所述装置还包括提示单元,用于:
若所述初始任务配置流程对应的循环依赖检测结果不满足所述预设条件,则根据所述循环依赖检测结果确定配置失败原因,以及,根据所述配置失败原因输出配置失败提示。
可选的,所述数据处理任务配置信息还包括各个数据处理任务各自分别对应的触发执行信息;
所述装置还包括执行单元,用于:
根据各个数据处理任务各自分别对应的触发执行信息,分别触发各个数据处理任务。
可选的,所述执行单元,具体用于:
针对每一个数据处理任务,获取该数据处理任务对应的执行参数;根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务。
可选的,若该数据处理任务对应的任务类型为起始数据处理任务,该数据处理任务对应的触发执行信息包括任务触发接口、执行周期和执行启动条件,该数据处理任务对应的执行参数包括执行任务的当前时刻、当前环境参数;
相应地,所述执行单元,具体用于:
若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
可选的,若该数据处理任务对应的任务类型为非起始数据处理任务,该数据处理任务对应的触发执行信息包括任务触发接口、执行周期,和/或执行启动条件,该数据处理任务对应的执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况,和/或当前环境参数;
相应地,所述所述执行单元,具体用于:
若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,和/或,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
图4是本申请实施例提供的一种电子设备的结构示意图。在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry StandardArchitecture,工业标准体系结构)总线、PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended IndustryStandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放执行指令。具体地,执行指令即可被执行的计算机程序。存储器可以包括内存和非易失性存储器,并向处理器提供执行指令和数据。
在一种可能实现的方式中,处理器从非易失性存储器中读取对应的执行指令到内存中然后运行,也可从其它设备上获取相应的执行指令,以在逻辑层面上形成数据处理任务的配置装置。处理器执行存储器所存放的执行指令,以通过执行的执行指令实现本申请任一实施例中提供的数据处理任务的配置方法。
上述如本申请图1所示实施例提供的数据处理任务的配置装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本申请实施例还提出了一种可读介质,该可读存储介质存储有执行指令,存储的执行指令被电子设备的处理器执行时,能够使该电子设备执行本申请任一实施例中提供的数据处理任务的配置方法,并具体用于执行上述数据处理任务的配置所述的方法。
前述各个实施例中所述的电子设备可以为计算机。
本领域内的技术人员应明白,本申请的实施例可提供为方法或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例,或软件和硬件相结合的形式。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种数据处理任务的配置方法,其特征在于,所述方法包括:
获取数据处理任务配置信息;
根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;
根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;
若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
2.根据权利要求1所述的方法,其特征在于,所述数据处理任务配置信息包括若干数据处理任务;所述根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系,包括:
获取所述数据处理任务配置信息中的若干数据处理任务;
确定所述若干数据处理任务中各个数据处理任务各自分别对应的目标信息和源信息;
根据所述若干数据处理任务中各个数据处理任务各自分别对应的目标信息和源信息,确定所述若干数据处理任务之间的上下游关系。
3.根据权利要求1所述的方法,其特征在于,所述根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程,包括:
根据所述若干数据处理任务之间的上下游关系,在所述若干数据处理任务之间建立上下游关系连接,得到所述初始任务配置流程。
4.根据权利要求1所述的方法,其特征在于,所述预设条件为:所述初始任务配置流程对应的循环依赖检测结果中不存在闭环循环的任务流,且所述初始任务配置流程中的起始数据处理任务具有执行启动条件;
相应地,所述若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果,包括:
检测所述初始任务配置流程对应的循环依赖检测结果中是否存在闭环循环的任务流,以及,所述循环依赖检测结果中的每个起始数据处理任务是否均具有执行启动条件;
若所述循环依赖检测结果中不存在闭环循环的任务流,以及,所述循环依赖检测结果中的每个起始数据处理任务均具有执行启动条件,则根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述初始任务配置流程对应的循环依赖检测结果不满足所述预设条件,则根据所述循环依赖检测结果确定配置失败原因,以及,根据所述配置失败原因输出配置失败提示。
6.根据权利要求1-5中任一所述的方法,其特征在于,所述数据处理任务配置信息还包括各个数据处理任务各自分别对应的触发执行信息;
所述方法还包括:
根据各个数据处理任务各自分别对应的触发执行信息,分别触发各个数据处理任务。
7.根据权利要求6所述的方法,其特征在于,所述根据各个数据处理任务各自分别对应的触发执行信息,分别触发各个数据处理任务,包括:
针对每一个数据处理任务,获取该数据处理任务对应的执行参数;根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务。
8.根据权利要求7所述的方法,其特征在于,若该数据处理任务对应的任务类型为起始数据处理任务,该数据处理任务对应的触发执行信息包括任务触发接口、执行周期和执行启动条件,该数据处理任务对应的执行参数包括执行任务的当前时刻、当前环境参数;
相应地,所述根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务,包括:
若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
9.根据权利要求7所述的方法,其特征在于,若该数据处理任务对应的任务类型为非起始数据处理任务,该数据处理任务对应的触发执行信息包括任务触发接口、执行周期,和/或执行启动条件,该数据处理任务对应的执行参数包括执行任务的当前时刻、该数据处理任务的全部上游数据处理任务的执行情况,和/或当前环境参数;
相应地,所述根据该数据处理任务对应的执行参数、该数据处理任务对应的触发执行信息,触发该数据处理任务,包括:
若所述当前时刻满足该数据处理任务对应的执行周期,以及,该数据处理任务的全部上游数据处理任务的执行情况均为已执行完成,和/或,该数据处理任务对应的当前环境参数满足该数据处理任务对应的执行启动条件,则调用该数据处理任务对应的任务触发接口,执行该数据处理任务。
10.一种数据处理任务的配置方法,其特征在于,所述装置包括:
信息获取单元,用于获取数据处理任务配置信息;
关系确定单元,用于根据所述数据处理任务配置信息,确定所述数据处理任务配置信息中的若干数据处理任务,以及所述若干数据处理任务之间的上下游关系;
流程确定单元,用于根据所述若干数据处理任务以及所述若干数据处理任务之间的上下游关系,确定初始任务配置流程;
结果确定单元,用于若所述初始任务配置流程对应的循环依赖检测结果满足预设条件,根据所述初始任务配置流程确定所述数据处理任务配置信息对应的任务配置结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287307.4A CN112925624A (zh) | 2021-03-17 | 2021-03-17 | 一种数据处理任务的配置方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287307.4A CN112925624A (zh) | 2021-03-17 | 2021-03-17 | 一种数据处理任务的配置方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112925624A true CN112925624A (zh) | 2021-06-08 |
Family
ID=76174875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110287307.4A Pending CN112925624A (zh) | 2021-03-17 | 2021-03-17 | 一种数据处理任务的配置方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112925624A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116501477A (zh) * | 2023-06-28 | 2023-07-28 | 中国电子科技集团公司第十五研究所 | 一种数据自动化处理方法、装置和设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526631A (zh) * | 2017-09-01 | 2017-12-29 | 百度在线网络技术(北京)有限公司 | 一种任务监控方法、装置、设备和介质 |
CN110704173A (zh) * | 2019-09-29 | 2020-01-17 | 深圳前海环融联易信息科技服务有限公司 | 任务调度方法、调度系统、电子设备及计算机存储介质 |
CN110704170A (zh) * | 2019-09-09 | 2020-01-17 | 深圳壹账通智能科技有限公司 | 批量任务处理方法、装置、计算机设备和存储介质 |
CN110764747A (zh) * | 2019-10-22 | 2020-02-07 | 南方电网科学研究院有限责任公司 | 基于Airflow的数据计算调度方法 |
CN111291123A (zh) * | 2020-02-12 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 任务节点管理方法以及装置 |
CN111680085A (zh) * | 2020-05-07 | 2020-09-18 | 北京三快在线科技有限公司 | 数据处理任务分析方法、装置、电子设备和可读存储介质 |
CN111967849A (zh) * | 2020-08-19 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 一种任务处理流程编排方法、装置及电子设备 |
CN112434061A (zh) * | 2020-08-25 | 2021-03-02 | 上海幻电信息科技有限公司 | 支持循环依赖的任务调度方法和系统 |
-
2021
- 2021-03-17 CN CN202110287307.4A patent/CN112925624A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526631A (zh) * | 2017-09-01 | 2017-12-29 | 百度在线网络技术(北京)有限公司 | 一种任务监控方法、装置、设备和介质 |
CN110704170A (zh) * | 2019-09-09 | 2020-01-17 | 深圳壹账通智能科技有限公司 | 批量任务处理方法、装置、计算机设备和存储介质 |
CN110704173A (zh) * | 2019-09-29 | 2020-01-17 | 深圳前海环融联易信息科技服务有限公司 | 任务调度方法、调度系统、电子设备及计算机存储介质 |
CN110764747A (zh) * | 2019-10-22 | 2020-02-07 | 南方电网科学研究院有限责任公司 | 基于Airflow的数据计算调度方法 |
CN111291123A (zh) * | 2020-02-12 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 任务节点管理方法以及装置 |
CN111680085A (zh) * | 2020-05-07 | 2020-09-18 | 北京三快在线科技有限公司 | 数据处理任务分析方法、装置、电子设备和可读存储介质 |
CN111967849A (zh) * | 2020-08-19 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 一种任务处理流程编排方法、装置及电子设备 |
CN112434061A (zh) * | 2020-08-25 | 2021-03-02 | 上海幻电信息科技有限公司 | 支持循环依赖的任务调度方法和系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116501477A (zh) * | 2023-06-28 | 2023-07-28 | 中国电子科技集团公司第十五研究所 | 一种数据自动化处理方法、装置和设备 |
CN116501477B (zh) * | 2023-06-28 | 2023-09-15 | 中国电子科技集团公司第十五研究所 | 一种数据自动化处理方法、装置和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107450972B (zh) | 一种调度方法、装置以及电子设备 | |
CN109445926A (zh) | 数据任务调度方法及数据任务调度系统 | |
US10102091B2 (en) | System and method for supporting a testing framework for an event processing system using multiple input event streams | |
Eshuis et al. | Requirements-level semantics for UML statecharts | |
CN111124906A (zh) | 基于动态埋点的跟踪方法、编译方法、装置和电子设备 | |
US9753825B2 (en) | System and method for using an event window for testing an event processing system | |
CN110677468B (zh) | 消息处理方法、装置以及设备 | |
CN106991046B (zh) | 应用测试方法及装置 | |
CN110647387A (zh) | 一种教育云大数据任务调度方法与系统 | |
CN112925624A (zh) | 一种数据处理任务的配置方法以及装置 | |
CN107784400B (zh) | 一种业务模型的执行方法和装置 | |
CN115061788A (zh) | 任务依赖关系的检测方法、装置、服务器及存储介质 | |
Schliecker et al. | A recursive approach to end-to-end path latency computation in heterogeneous multiprocessor systems | |
Song et al. | Equivalence-enhanced microservice workflow orchestration to efficiently increase reliability | |
CN113688602A (zh) | 一种任务处理方法以及装置 | |
CN101794215B (zh) | 一种汇编执行复杂任务的方法和装置 | |
US20140325479A1 (en) | Synchronization of an automation script | |
CN115187131A (zh) | 一种任务执行状态展示方法、装置、设备及存储介质 | |
Shan et al. | RTLib: A library of timed automata for modeling real-time systems | |
CN113626333A (zh) | 一种接口自动化测试方法及装置 | |
CN113391818A (zh) | 一种编译文件的生成方法以及装置 | |
CN107273191B (zh) | 一种使用逻辑克隆表达式的定时任务调度的方法及装置 | |
Xu et al. | A task scenario oriented test requirement modeling method for complex SOA-based system | |
CN117032916B (zh) | 基于事件的任务调度算法、装置和存储介质 | |
US20240027998A1 (en) | Resume of failed automates in end-to-end process |
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 |