CN110888720A - 任务处理方法、装置、计算机设备及存储介质 - Google Patents

任务处理方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110888720A
CN110888720A CN201910951760.3A CN201910951760A CN110888720A CN 110888720 A CN110888720 A CN 110888720A CN 201910951760 A CN201910951760 A CN 201910951760A CN 110888720 A CN110888720 A CN 110888720A
Authority
CN
China
Prior art keywords
operator
parameters
task
operators
directed acyclic
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
Application number
CN201910951760.3A
Other languages
English (en)
Inventor
崔轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910951760.3A priority Critical patent/CN110888720A/zh
Publication of CN110888720A publication Critical patent/CN110888720A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Abstract

本发明公开了任务处理方法、装置、计算机设备及存储介质,其中方法可包括:获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系;根据所述数据传递关系构建有向无环图;按照有向无环图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行。应用本发明所述方案,可提升任务处理的灵活性等。

Description

任务处理方法、装置、计算机设备及存储介质
【技术领域】
本发明涉及计算机应用技术,特别涉及任务处理方法、装置、计算机设备及存储介质。
【背景技术】
在实际应用中,可基于有向无环图(DAG,Directed Acyclic Graph)来实现任务处理。DAG图是有向图的一种,特点是图中没有环,常常被用来表示事件之间的驱动依赖关系,管理任务之间的调度。所述任务可为抽取转换加载(ETL,Extract-Transform-Load)任务等。
但是,目前的任务实现过于定制化,即针对不同的任务需要分别实现专门的业务处理逻辑,实现方式不够灵活,而且增大了实现复杂度等。
【发明内容】
有鉴于此,本发明提供了任务处理方法、装置、计算机设备及存储介质。
具体技术方案如下:
一种任务处理方法,包括:
获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系;
根据所述数据传递关系构建有向无环图;
按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
根据本发明一优选实施例,所述根据所述数据传递关系构建有向无环图之前,进一步包括:对所述任务描述文件中的内容进行校验,若校验通过,则根据所述数据传递关系构建有向无环图。
根据本发明一优选实施例,所述按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行之前,进一步包括:将所述算子的参数转换为预定格式。
根据本发明一优选实施例,所述按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行之前,进一步包括:根据任务引擎类型初始化引擎环境;
所述按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行包括:基于初始化后的引擎环境,按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
根据本发明一优选实施例,所述基于所述算子的参数分别对每个算子进行创建与执行包括:
针对每个算子,分别进行以下处理:
根据所述算子的参数确定出所述算子的算子类型;
创建所述算子类型的算子;
执行所创建的算子。
根据本发明一优选实施例,该方法进一步包括:将上一下算子的输出以二维数组的形式传递给下一个算子,作为所述下一个算子的输入。
一种任务处理装置,包括:获取单元、解析单元以及运行单元;
所述获取单元,用于获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系;
所述解析单元,用于根据所述数据传递关系构建有向无环图;
所述运行单元,用于按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
根据本发明一优选实施例,所述解析单元进一步用于,对所述任务描述文件中的内容进行校验,若校验通过,则根据所述数据传递关系构建有向无环图。
根据本发明一优选实施例,所述解析单元进一步用于,将所述算子的参数转换为预定格式。
根据本发明一优选实施例,所述装置中进一步包括:初始化单元,用于根据任务引擎类型初始化引擎环境;
所述运行单元基于初始化后的引擎环境,按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
根据本发明一优选实施例,所述运行单元针对每个算子,分别进行以下处理:根据所述算子的参数确定出所述算子的算子类型;创建所述算子类型的算子;执行所创建的算子。
根据本发明一优选实施例,所述运行单元进一步用于,将上一下算子的输出以二维数组的形式传递给下一个算子,作为所述下一个算子的输入。
一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如以上所述的方法。
基于上述介绍可以看出,采用本发明所述方案,用户可根据自身需求灵活地自定义任务描述文件,并可基于自定义的任务描述文件实现算子的创建与执行等,即实现任务处理,从而相比于现有方式提升了任务处理的灵活性,且实现起来简单方便,另外,本发明所述方案不局限于语言、平台等软硬件环境,具有广泛适用性。
【附图说明】
图1为本发明所述任务处理方法第一实施例的流程图。
图2为本发明所述任务处理方法第二实施例的流程图。
图3为本发明所述任务处理装置实施例的组成结构示意图。
图4示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。
【具体实施方式】
针对现有技术中存在的问题,本发明中提出一种通过自定义的方式来使得用户能够灵活地定义实际的数据处理逻辑任务的方法,通过算子来定义一个处理逻辑的基本单元,整个任务通过算子与算子进行衔接。
为了使本发明的技术方案更加清楚、明白,以下参照附图并举实施例,对本发明所述方案进行进一步说明。
显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
另外,应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
图1为本发明所述任务处理方法第一实施例的流程图。如图1所示,包括以下具体实现方式。
在101中,获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系。
在102中,根据算子与算子之间的数据传递关系构建DAG图。
在103中,按照DAG图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行。
可获取用户自定义的针对任一任务的任务描述文件,为方便后续的解析处理等,优选地,任务描述文件可为可扩展标记语言(XML,eXtensible Markup Language)格式的任务描述文件。
任务描述文件中可包含算子的参数以及算子与算子之间的数据传递关系。“算子”在数学上可以解释为一个函数空间到函数空间上的映射,其实就是一个数据处理单元,往往是指一个函数,在使用算子时通常会有输入和输出,算子则完成相应的数据转换。算子与算子之间的数据传递关系可包括每个算子的输出将传递到哪个/哪些算子,输入来自哪个/哪些算子等。
在获取到任务描述文件后,可对其进行解析处理,如可根据任务描述文件中包含的算子与算子之间的数据传递关系构建DAG图等。在此之前,还可对获取到的任务描述文件中的内容进行校验,若校验通过,则可继续之后的处理,若校验未通过,则可不进行后续的处理。
所述校验可包括对算子的参数进行校验及校验是否有不合规范的逻辑等。具体校验方式不限,比如,针对每个算子,可分别校验该算子所需的参数是否齐全,并可进行算子与算子之间的数据传递关系的校验,如确定是否会导致后续构建的图中出现环等,若出现算子的参数不齐全或会导致后续构建的图中出现环的情况,则可认为校验未通过。
在获取到任务描述文件后,还可将其中包含的算子的参数转换为预定格式,以方便后续处理,所述预定格式具体为何种格式可根据实际需要而定。
之后,可根据任务描述文件中包含的算子与算子之间的数据传递关系构建DAG图,每个算子可分别作为DAG图中的一个节点。
进一步地,还可根据任务引擎类型初始化引擎环境。比如,对于Spark引擎,初始化引擎环境可包括创建spark context等,对于本地引擎,初始化引擎环境可包括创建本地所需的全局变量等,以方便算子之间共享数据。
基于初始化后的引擎环境,可按照DAG图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行。其中,按照DAG图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行,即指按照DAG图中的各算子的数据传递关系,或称为依赖关系,按顺序分别对各算子进行创建与执行。
具体地,针对每个算子,可分别进行以下处理:根据该算子的参数确定出该算子的算子类型;创建该算子类型的算子;执行所创建的算子。如何确定算子类型、创建算子及执行算子均为现有技术。
另外,本实施例中,可将上一下算子的输出以二维数组的形式传递给下一个算子,作为下一个算子的输入。其中,每一行作为一条记录,每一列为一个字段,各字段的含义可通过模式(schema)进行定义,schema可随二维数组一起传递给下一个算子。具体包含哪些字段可根据实际需要而定。
本实施例中,可通过Meta服务来进行整个流程的元数据管理,如算子注入的类及方式等。
基于上述介绍,图2为本发明所述任务处理方法第二实施例的流程图。如图2所示,包括以下具体实现方式。
在201中,获取针对任一任务的XML格式的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系。
任务描述文件可为人工定义的,其中具体包含哪些内容可根据任务需求来定。
在202中,对任务描述文件中的内容进行校验,确定是否校验通过,若是,则执行203,否则,结束流程。
具体校验方式不限,比如,针对每个算子,可分别校验该算子所需的参数是否齐全,并可进行算子与算子之间的数据传递关系的校验,如确定是否会导致后续构建的图中出现环等,若出现算子的参数不齐全或会导致后续构建的图中出现环的情况,则可认为校验未通过。
在203中,将任务描述文件中包含的算子的参数转换为预定格式。
任务描述文件中包含的算子的参数可能为任意格式,可将其转换为所要求的预定格式,以方便后续处理等。
在204中,根据任务描述文件中包含的算子与算子之间的数据传递关系构建DAG图。
每个算子可分别作为DAG图中的一个节点。
在205中,根据任务引擎类型初始化引擎环境。
比如,对于Spark引擎,初始化引擎环境可包括创建spark context等,对于本地引擎,初始化引擎环境可包括创建本地所需的全局变量等,以方便算子之间共享数据。
在206中,基于初始化后的引擎环境,按照DAG图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行。
可按照DAG图中的各算子的数据传递关系,按顺序分别对各算子进行创建与执行。
其中,针对每个算子,可分别进行以下处理:根据该算子的参数确定出该算子的算子类型;创建该算子类型的算子;执行所创建的算子。
当按照上述方式对所有算子处理完毕后,即可结束流程。
另外,本实施例中,可将上一下算子的输出以二维数组的形式传递给下一个算子,作为下一个算子的输入。其中,每一行作为一条记录,每一列为一个字段,各字段的含义可通过schema进行定义,schema可随二维数组一起传递给下一个算子。
需要说明的是,对于前述的各方法实施例,为了简单描述,将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
总之,采用本发明方法实施例所述方案,用户可根据自身需求灵活地自定义任务描述文件,并可基于自定义的任务描述文件实现算子的创建与执行等,即实现任务处理,从而相比于现有方式提升了任务处理的灵活性,且实现起来简单方便,另外,本发明所述方案不局限于语言、平台等软硬件环境,具有广泛适用性。
另外,传统的方式中,算子与算子之间只能通过落地到磁盘的方式进行衔接,上一个算子的输出保存到文件中,下一个算子再从文件中读取数据,从而增加了实现复杂度,并影响了数据传递效率等,而采用本发明方法实施例所述方案,可将上一下算子的输出以二维数组的形式传递给下一个算子,作为下一个算子的输入,从而克服了落地到磁盘的方式所带来的问题。
再有,采用本发明方法实施例所述方案,可基于任务描述文件实时导入算子,在编译阶段不依赖算子,能够实现算子的热插拔等。
图3为本发明所述任务处理装置实施例的组成结构示意图。如图3所示,包括:获取单元301、解析单元302以及运行单元303。
获取单元301,用于获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系。
解析单元302,用于根据算子与算子之间的数据传递关系构建DAG图。
运行单元303,用于按照DAG图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行。
获取单元301可获取用户自定义的针对任一任务的任务描述文件,为方便后续的解析处理等,优选地,任务描述文件可为XML格式的任务描述文件。
解析单元302可对任务描述文件进行解析处理,如可根据任务描述文件中包含的算子与算子之间的数据传递关系构建DAG图等。在此之前,解析单元302还可对任务描述文件中的内容进行校验,若校验通过,则可继续之后的处理,若校验未通过,则可不进行后续的处理。
所述校验可包括对算子的参数进行校验及校验是否有不合规范的逻辑等。具体校验方式不限,比如,针对每个算子,可分别校验该算子所需的参数是否齐全,并可进行算子与算子之间的数据传递关系的校验,如确定是否会导致后续构建的图中出现环等,若出现算子的参数不齐全或会导致后续构建的图中出现环的情况,则可认为校验未通过。
解析单元302还可将任务描述文件中包含的算子的参数转换为预定格式。
解析单元302可根据任务描述文件中包含的算子与算子之间的数据传递关系构建DAG图,每个算子可分别作为DAG图中的一个节点。
图3所示装置中还可进一步包括:初始化单元304,用于根据任务引擎类型初始化引擎环境。比如,对于Spark引擎,初始化引擎环境可包括创建spark context等,对于本地引擎,初始化引擎环境可包括创建本地所需的全局变量等,以方便算子之间共享数据。相应地,运行单元303可基于初始化后的引擎环境,按照DAG图中规定的顺序,基于算子的参数分别对每个算子进行创建与执行。
其中,运行单元303可针对每个算子,分别进行以下处理:根据该算子的参数确定出该算子的算子类型;创建该算子类型的算子;执行所创建的算子。
另外,运行单元303可将上一下算子的输出以二维数组的形式传递给下一个算子,作为下一个算子的输入。其中,每一行作为一条记录,每一列为一个字段,各字段的含义可通过schema进行定义,schema可随二维数组一起传递给下一个算子。
图3所示装置实施例的具体工作流程请参照前述方法实施例中的相关说明,不再赘述。
总之,采用本发明装置实施例所述方案,用户可根据自身需求灵活地自定义任务描述文件,并可基于自定义的任务描述文件实现算子的创建与执行等,即实现任务处理,从而相比于现有方式提升了任务处理的灵活性,且实现起来简单方便,另外,本发明所述方案不局限于语言、平台等软硬件环境,具有广泛适用性。
另外,传统的方式中,算子与算子之间只能通过落地到磁盘的方式进行衔接,上一个算子的输出保存到文件中,下一个算子再从文件中读取数据,从而增加了实现复杂度,并影响了数据传递效率等,而采用本发明装置实施例所述方案,可将上一下算子的输出以二维数组的形式传递给下一个算子,作为下一个算子的输入,从而克服了落地到磁盘的方式所带来的问题。
再有,采用本发明装置实施例所述方案,可基于任务描述文件实时导入算子,在编译阶段不依赖算子,能够实现算子的热插拔等。
图4示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图4显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器(处理单元)16,存储器28,连接不同系统组件(包括存储器28和处理器16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图4所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器16通过运行存储在存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现图1或图2所示实施例中的方法。
本发明同时公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时将实现如图1或图2所示实施例中的方法。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法等,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (14)

1.一种任务处理方法,其特征在于,包括:
获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系;
根据所述数据传递关系构建有向无环图;
按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
2.根据权利要求1所述的方法,其特征在于,
所述根据所述数据传递关系构建有向无环图之前,进一步包括:对所述任务描述文件中的内容进行校验,若校验通过,则根据所述数据传递关系构建有向无环图。
3.根据权利要求1所述的方法,其特征在于,
所述按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行之前,进一步包括:将所述算子的参数转换为预定格式。
4.根据权利要求1所述的方法,其特征在于,
所述按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行之前,进一步包括:根据任务引擎类型初始化引擎环境;
所述按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行包括:基于初始化后的引擎环境,按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
5.根据权利要求1所述的方法,其特征在于,
所述基于所述算子的参数分别对每个算子进行创建与执行包括:
针对每个算子,分别进行以下处理:
根据所述算子的参数确定出所述算子的算子类型;
创建所述算子类型的算子;
执行所创建的算子。
6.根据权利要求1所述的方法,其特征在于,
该方法进一步包括:将上一下算子的输出以二维数组的形式传递给下一个算子,作为所述下一个算子的输入。
7.一种任务处理装置,其特征在于,包括:获取单元、解析单元以及运行单元;
所述获取单元,用于获取针对任一任务的任务描述文件,其中包含算子的参数以及算子与算子之间的数据传递关系;
所述解析单元,用于根据所述数据传递关系构建有向无环图;
所述运行单元,用于按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
8.根据权利要求7所述的装置,其特征在于,
所述解析单元进一步用于,对所述任务描述文件中的内容进行校验,若校验通过,则根据所述数据传递关系构建有向无环图。
9.根据权利要求7所述的装置,其特征在于,
所述解析单元进一步用于,将所述算子的参数转换为预定格式。
10.根据权利要求7所述的装置,其特征在于,
所述装置中进一步包括:初始化单元,用于根据任务引擎类型初始化引擎环境;
所述运行单元基于初始化后的引擎环境,按照所述有向无环图中规定的顺序,基于所述算子的参数分别对每个算子进行创建与执行。
11.根据权利要求7所述的装置,其特征在于,
所述运行单元针对每个算子,分别进行以下处理:根据所述算子的参数确定出所述算子的算子类型;创建所述算子类型的算子;执行所创建的算子。
12.根据权利要求7所述的装置,其特征在于,
所述运行单元进一步用于,将上一下算子的输出以二维数组的形式传递给下一个算子,作为所述下一个算子的输入。
13.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~6中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~6中任一项所述的方法。
CN201910951760.3A 2019-10-08 2019-10-08 任务处理方法、装置、计算机设备及存储介质 Pending CN110888720A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910951760.3A CN110888720A (zh) 2019-10-08 2019-10-08 任务处理方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910951760.3A CN110888720A (zh) 2019-10-08 2019-10-08 任务处理方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN110888720A true CN110888720A (zh) 2020-03-17

Family

ID=69746063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910951760.3A Pending CN110888720A (zh) 2019-10-08 2019-10-08 任务处理方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN110888720A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625243A (zh) * 2020-05-13 2020-09-04 北京字节跳动网络技术有限公司 跨语言任务处理方法、装置及电子设备
CN111708520A (zh) * 2020-06-16 2020-09-25 北京百度网讯科技有限公司 应用构建方法、装置、电子设备及存储介质
CN112148455A (zh) * 2020-09-29 2020-12-29 星环信息科技(上海)有限公司 一种任务处理方法、设备及介质
CN112632082A (zh) * 2020-12-30 2021-04-09 中国农业银行股份有限公司 一种创建Flink作业的方法及装置
CN113326131A (zh) * 2021-06-03 2021-08-31 深信服科技股份有限公司 一种数据处理方法、装置、设备及存储介质
CN113342500A (zh) * 2021-06-29 2021-09-03 北京三快在线科技有限公司 任务执行方法、装置、设备及存储介质
CN113377348A (zh) * 2021-06-10 2021-09-10 平安科技(深圳)有限公司 应用于任务引擎的任务调整方法、相关装置和存储介质
CN114257701A (zh) * 2020-09-23 2022-03-29 北京字节跳动网络技术有限公司 视频处理算法的接入配置方法、设备及存储介质
WO2023284892A1 (zh) * 2021-07-16 2023-01-19 众安在线财产保险股份有限公司 可配置的数据计算方法、装置、设备及介质
WO2023124677A1 (zh) * 2021-12-30 2023-07-06 华为技术有限公司 数据处理的方法和计算平台

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160112830A (ko) * 2015-03-20 2016-09-28 한국전자통신연구원 최적화된 태스크 기반 데이터 처리 서비스 생성 방법 및 장치
CN107463595A (zh) * 2017-05-12 2017-12-12 中国科学院信息工程研究所 一种基于Spark的数据处理方法及系统
CN107885587A (zh) * 2017-11-17 2018-04-06 清华大学 一种大数据分析流程的执行计划生成方法
CN109445926A (zh) * 2018-11-09 2019-03-08 杭州玳数科技有限公司 数据任务调度方法及数据任务调度系统
CN110209486A (zh) * 2019-06-06 2019-09-06 南威软件股份有限公司 基于界面的spark任务流程构建方法和计算机可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160112830A (ko) * 2015-03-20 2016-09-28 한국전자통신연구원 최적화된 태스크 기반 데이터 처리 서비스 생성 방법 및 장치
CN107463595A (zh) * 2017-05-12 2017-12-12 中国科学院信息工程研究所 一种基于Spark的数据处理方法及系统
CN107885587A (zh) * 2017-11-17 2018-04-06 清华大学 一种大数据分析流程的执行计划生成方法
CN109445926A (zh) * 2018-11-09 2019-03-08 杭州玳数科技有限公司 数据任务调度方法及数据任务调度系统
CN110209486A (zh) * 2019-06-06 2019-09-06 南威软件股份有限公司 基于界面的spark任务流程构建方法和计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赤耳君: "RDD的设计与运行原理", 《赤耳君说》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625243A (zh) * 2020-05-13 2020-09-04 北京字节跳动网络技术有限公司 跨语言任务处理方法、装置及电子设备
CN111708520A (zh) * 2020-06-16 2020-09-25 北京百度网讯科技有限公司 应用构建方法、装置、电子设备及存储介质
CN111708520B (zh) * 2020-06-16 2023-08-29 北京百度网讯科技有限公司 应用构建方法、装置、电子设备及存储介质
CN114257701A (zh) * 2020-09-23 2022-03-29 北京字节跳动网络技术有限公司 视频处理算法的接入配置方法、设备及存储介质
CN112148455A (zh) * 2020-09-29 2020-12-29 星环信息科技(上海)有限公司 一种任务处理方法、设备及介质
CN112632082A (zh) * 2020-12-30 2021-04-09 中国农业银行股份有限公司 一种创建Flink作业的方法及装置
CN113326131A (zh) * 2021-06-03 2021-08-31 深信服科技股份有限公司 一种数据处理方法、装置、设备及存储介质
CN113377348A (zh) * 2021-06-10 2021-09-10 平安科技(深圳)有限公司 应用于任务引擎的任务调整方法、相关装置和存储介质
CN113342500A (zh) * 2021-06-29 2021-09-03 北京三快在线科技有限公司 任务执行方法、装置、设备及存储介质
WO2023284892A1 (zh) * 2021-07-16 2023-01-19 众安在线财产保险股份有限公司 可配置的数据计算方法、装置、设备及介质
WO2023124677A1 (zh) * 2021-12-30 2023-07-06 华为技术有限公司 数据处理的方法和计算平台

Similar Documents

Publication Publication Date Title
CN110888720A (zh) 任务处理方法、装置、计算机设备及存储介质
CN110096338B (zh) 智能合约执行方法、装置、设备及介质
CN103930898B (zh) 程序分析/验证服务提供系统及其控制方法、程序分析/验证装置、程序分析/验证工具管理装置
CN110008045B (zh) 微服务的聚合方法、装置、设备及存储介质
US20200073712A1 (en) Method, apparatus, device and medium for processing topological relation of tasks
CN109062780B (zh) 自动化测试用例的开发方法及终端设备
CN114424257A (zh) 使用机器学习对表格数据进行自动描绘和提取
CN110825431A (zh) 接口文档处理方法及装置、系统、存储介质和电子设备
CN111291882A (zh) 一种模型转换的方法、装置、设备和计算机存储介质
CN108595211B (zh) 用于输出数据的方法和装置
US20050114836A1 (en) Block box testing in multi-tier application environments
CN110868324A (zh) 一种业务配置方法、装置、设备和存储介质
CN114358742A (zh) 一种工作流执行方法、装置、设备及存储介质
CN113962597A (zh) 一种数据分析方法、装置、电子设备及存储介质
CN113238739A (zh) 一种插件开发和数据获取方法、装置、电子设备及介质
KR101826828B1 (ko) 로그 데이터 관리 시스템 및 방법
CN111008189A (zh) 一种动态数据模型构建方法
US9208046B2 (en) Method and system for optimizing testing efforts in system of systems testing
CN111625532A (zh) 数据血缘关系处理方法、装置、计算机设备及存储介质
KR20200103133A (ko) 하둡 기반의 빅데이터 시스템에서 etl 절차를 수행하는 방법 및 장치
US11797277B2 (en) Neural network model conversion method server, and storage medium
US20150039567A1 (en) Protecting storage data during system migration
KR20160054273A (ko) 3d모델 뷰어에서 조선용 캐드의 접속/통신 장치 및 그 방법
US20220415481A1 (en) Mesh topology adaptation
CN114791885A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200317

RJ01 Rejection of invention patent application after publication