CN112905339A - 任务调度执行方法、装置及*** - Google Patents
任务调度执行方法、装置及*** Download PDFInfo
- Publication number
- CN112905339A CN112905339A CN202110170691.XA CN202110170691A CN112905339A CN 112905339 A CN112905339 A CN 112905339A CN 202110170691 A CN202110170691 A CN 202110170691A CN 112905339 A CN112905339 A CN 112905339A
- Authority
- CN
- China
- Prior art keywords
- task
- scheduling
- execution
- script
- event
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000013515 script Methods 0.000 claims abstract description 155
- 238000012545 processing Methods 0.000 claims abstract description 146
- 238000013500 data storage Methods 0.000 claims abstract description 67
- 238000004458 analytical method Methods 0.000 claims description 24
- 238000003860 storage Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 claims description 6
- 238000009826 distribution Methods 0.000 claims description 4
- 230000002688 persistence Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 17
- 230000006870 function Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001376 precipitating effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种任务调度执行方法、装置及***,可用于金融领域的数据处理,该方法包括:获取任务事件,在数据存储节点存储任务事件的任务信息;任务信息包括任务类型信息;根据任务类型信息在数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据目标任务调度脚本生成任务事件的调度数据;根据调度数据确定目标任务处理节点;将任务事件和目标任务执行脚本发送至目标任务处理节点,以使目标任务处理节点利用任务信息和目标任务执行脚本执行任务事件。本发明用数据存储节点存储任务调度脚本和任务执行脚本,可通过更新脚本调度数据和处理数据的逻辑,实现在线更新任务事件调度执行的逻辑,降低业务功能更新上线的复杂度。
Description
技术领域
本发明涉及数据处理技术领域,尤其是涉及一种任务调度执行方法、装置及***。需要说明的是,本公开提供的任务调度执行方法、装置及***可用于金融领域分布式***架构中的数据处理,也可用于除金融领域之外的任意领域分布式***架构中的数据处理,本公开任务调度执行方法、装置及***的应用领域不作限定。
背景技术
分析型***存在大量数据导入,数据处理以及数据导出操作,在Oracle数据存储+Oracle存储过程数据处理这个模式下,通过Oracle的SQL(Structured Query Language,结构化查询语言)执行计划优化等措施,可以使得单点的数据库数据处理能力大大提升。但是随着业务规模的扩大,单点的性能容量已经无法满足业务发展的需要,目前常规的解决方法是对***做分布式改造,用集群的处理能力提升***整体性能。
分布式***的架构中,关系型数据库仅用于数据存储,应用的分布式节点需要完成数据的查询,更新和处理。因此传统分析性应用在从Oracle实现数据存储和处理转型到数据库仅存储数据+分布式节点处理数据的过程中,存在以下问题:
1.存储过程处理数据时,获取被处理数据是由数据库引擎完成的,仅需考虑SQL的效率即可,而分布式改造后,分布式处理节点不仅要考虑SQL本身的效率,也要考虑数据从数据库到分布式处理节点的网络传输效率。如果单纯按照存储过程的处理方式,程序处理性能反而下降;
2.现有的分布式***数据处理逻辑常常耦合在分布式任务处理节点的二进制执行文件中,相比于数据库存储过程模式下仅需要重新编译新的存储过程即可上线新的处理逻辑,分布式***数据处理节点更新处理逻辑往往需要替换旧的执行文件并重启相关处理进程或容器,使得业务功能更新上线复杂度提高。
发明内容
本发明提供了一种任务调度执行方法、装置及***,一方面可以简化业务逻辑实现从存储过程向分布式任务处理转型的难度,另一方面,通过将脚本化的任务调度和任务处理逻辑和分布式技术框架解耦,不仅可以在分布式***的运行态完成任务调度和处理逻辑的更新,也提高分布式节点扩展性。
第一方面,本发明实施例提供了一种任务调度执行方法,应用于任务调度节点,该方法包括:获取任务事件,在数据存储节点存储所述任务事件的任务信息;所述任务信息包括任务类型信息;根据所述任务类型信息在所述数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据所述目标任务调度脚本生成所述任务事件的调度数据;根据所述调度数据确定目标任务处理节点;将所述任务事件和所述目标任务执行脚本发送至所述目标任务处理节点,以使所述目标任务处理节点利用所述任务信息和所述目标任务执行脚本执行所述任务事件。
第二方面,本发明实施例还提供一种任务调度执行方法,应用于任务处理节点,该方法包括:接收任务调度节点发送的任务事件和目标任务执行脚本;根据所述目标任务执行脚本生成所述任务事件的执行数据;根据所述执行数据和任务信息生成所述任务事件的执行结果。
第三方面,本发明实施例还提供一种任务调度执行装置,该装置应用于任务调度节点,该装置包括:事件中心模块,用于获取任务事件,在数据存储节点存储所述任务事件的任务信息;所述任务信息包括任务类型信息;第一脚本解析模块,用于根据所述任务类型信息在所述数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据所述目标任务调度脚本生成所述任务事件的调度数据;节点资源管理模块,用于根据所述调度数据确定目标任务处理节点;任务分发模块,用于将所述任务事件和所述目标任务执行脚本发送至所述目标任务处理节点,以使所述目标任务处理节点利用所述任务信息和所述目标任务执行脚本执行所述任务事件。
第四方面,本发明实施例还提供一种任务调度执行装置,应用于任务处理节点,该装置包括:任务接收模块,用于接收任务调度节点发送的任务事件和目标任务执行脚本;第二脚本解析模块,用于根据所述目标任务执行脚本生成所述任务事件的执行数据;任务执行模块,用于根据所述执行数据和任务信息生成所述任务事件的执行结果。
第五方面,本发明实施例还提供一种任务调度执行***,该***包括:数据存储节点、任务调度节点和多个任务处理节点;所述任务调度分别与所述数据存储节点、所述任务处理节点通信连接;所述任务处理节点与所述数据存储节点通信连接;所述任务调度节点包括上述任务调度执行装置;所述任务处理节点包括上述任务调度执行装置;所述数据存储节点用于存储任务调度脚本和任务执行脚本。
第六方面,本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任务调度执行方法。
第七方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述任务调度执行方法的计算机程序。
本发明实施例带来了以下有益效果:本发明实施例提供了一种任务调度执行方案,该方案包括:获取任务事件,在数据存储节点存储任务事件的任务信息;任务信息包括任务类型信息;根据任务类型信息在数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据目标任务调度脚本生成任务事件的调度数据;根据调度数据确定目标任务处理节点;将任务事件和目标任务执行脚本发送至目标任务处理节点,以使目标任务处理节点利用任务信息和目标任务执行脚本执行任务事件。本发明实施例用数据存储节点存储任务调度脚本和任务执行脚本,因此,可通过更新脚本调度数据和处理数据的逻辑,实现在线更新任务事件调度执行的逻辑,降低业务功能更新上线的复杂度,另外,通过任务执行脚本实现任务事件从数据存储节点向数据处理节点的传输,可提高数据从数据库到分布式处理节点的网络传输效率。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的应用于任务调度节点的任务调度执行方法流程图;
图2为本发明实施例提供的应用于任务处理节点的任务调度执行方法流程图;
图3为本发明实施例提供的任务调度执行***结构框图;
图4为本发明实施例提供的任务调度执行***信息传递关系示意图;
图5为本发明实施例提供的数据存储节点结构框图;
图6为本发明实施例提供的事件中心模块结构框图;
图7为本发明实施例提供的第一脚本解析模块结构框图;
图8为本发明实施例提供的第二脚本解析模块结构框图;
图9为本发明实施例提供的应用于任务调度节点的任务调度执行装置结构框图;
图10为本发明实施例提供的应用于任务处理节点的任务调度执行装置结构框图;
图11为本发明实施例提供的计算机设备结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的一种任务调度执行方法、装置及***,该方法可以对脚本中获取业务数据的处理逻辑进行优化,将执行中需要用到的热点数据进行缓存,降低脚本执行中连接数据库获取业务数据的网络开销,提升执行效率;脚本作为任务执行的主体,集中存储于数据存储节点,既能保障分布式体系中任务处理逻辑的一致性,又为集群提供了在线更新任务处理逻辑的能力。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种任务调度执行方法进行详细介绍。
本发明实施例提供了一种任务调度执行方法,参见图1所示的应用于任务调度节点的任务调度执行方法流程图,该方法包括以下步骤:
步骤102,获取任务事件,在数据存储节点存储任务事件的任务信息。
在本发明实施例中,任务事件包括待处理的任务数据。待处理的任务数据中包括多种任务信息,例如,至少包括任务的基本信息、任务的输入参数信息和任务的状态信息和任务的类型信息。其中,任务类型信息用于确定任务所属的类型,不同的任务类型,需要采用不同任务调度脚本和任务处理脚本进行处理。将与任务事件相关的任务信息存储到数据存储节点中,从而减少数据丢失风险。
需要说明的是,本发明实施例中,任务调度脚本和任务处理脚本存储在数据存储节点。
步骤104,根据任务类型信息在数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据目标任务调度脚本生成任务事件的调度数据。
在本发明实施例中,任务类型信息与任务调度脚本具有对应关系,任务类型信息与任务执行脚本也具有对应关系,因此,在确定了任务事件的任务类型信息之后,可以根据任务类型信息查询数据存储节点,在多个任务调度脚本中筛选出目标任务脚本,在多个任务执行脚本中筛选出目标任务执行脚本,应用该目标任务调度脚本对任务事件进行处理。
需要说明的是,对目标任务调度脚本进行处理,得到二进制的调度数据。
步骤106,根据调度数据确定目标任务处理节点。
在本发明实施例中,通过计算调度数据所需要的资源,在多个任务处理节点中筛选出合适的节点作为目标任务处理节点。
步骤108,将任务事件和目标任务执行脚本发送至目标任务处理节点,以使目标任务处理节点利用任务信息和目标任务执行脚本执行任务事件。
在本发明实施例中,将任务事件和目标任务执行脚本发送至目标任务处理节点,目标任务处理节点从数据存储节点可以获取该任务事件的任务信息,进而实现该任务事件的调度执行。
需要说明的是,任务信息存储在数据存储节点中,目标任务处理节点可以直接从数据存储节点获取任务信息,假如处理节点异常,任务的基本信息和输入参数依然在数据库里可以获取到,方便其他节点恢复任务,保证数据的安全性,防止数据丢失。
本发明实施例提供了一种任务调度执行方案,该方案包括:获取任务事件,在数据存储节点存储任务事件的任务信息;任务信息包括任务类型信息;根据任务类型信息在数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据目标任务调度脚本生成任务事件的调度数据;根据调度数据确定目标任务处理节点;将任务事件和目标任务执行脚本发送至目标任务处理节点,以使目标任务处理节点利用任务信息和目标任务执行脚本执行任务事件。本发明实施例用数据存储节点存储任务调度脚本和任务执行脚本,因此,可通过更新脚本调度数据和处理数据的逻辑,实现在线更新任务事件调度执行的逻辑,降低业务功能更新上线的复杂度,另外,通过任务执行脚本实现任务事件从数据存储节点向数据处理节点的传输,可提高数据从数据库到分布式处理节点的网络传输效率。
为了提升任务的处理效率,优化资源的配置,根据调度数据确定目标任务处理节点,可以按照如下步骤执行:
获取多个任务处理节点的资源状态数据;利用调度数据和资源状态数据确定目标任务处理节点。
在本发明实施例中,分布式处理集群中包括多个任务处理节点,不同节点的工作状态可能不同,处理能力也可能不同,因此,获取每个节点的工作状态和工作能力信息,得到资源状态数据。根据调度数据可以估算出任务事件所需要占用的资源,进而,利用调度数据和资源状态数据确定目标更合适的节点作为目标任务处理节点。
需要说明的是,在本发明实施例中,可以采用空闲节点优先的原则获取可用处理节点作为目标任务处理节点。记录当前集群中所有提供服务的任务处理节点及其忙闲情况(是否有任务在执行)任务分发时,分配任务到空闲的节点上。
为了处理多种渠道的数据,获取任务事件,可以按照如下步骤执行:
接收目标接口发送的任务事件或接收***定时发送的任务事件。
在本发明实施例中,目标接口是根据实际需求确定的外部接口。外部接口事件和定时事件属于任务触发的两种方式。同一个类型的任务,可以是被外部事件触发,也可以是***通过定时器触发。
为了提升数据处理和传输效率,数据存储节点至少包括调度数据库、业务数据库、文件服务器和缓存;在数据存储节点存储任务事件的任务信息,可以按照如下步骤执行:
将脚本信息储至调度数据库;将任务信息存储至业务数据库;将第一目标信息存储至文件服务器;将第二目标信息存储至缓存。
在本发明实施例中,脚本信息可以包括多个任务调度脚本和多个任务执行脚本,任务信息至少包括任务的基本信息、任务的输入参数信息和任务的状态信息和任务的类型信息等待处理的业务数据,第一目标信息包括不易入库的数据文件,第二目标信息包括数据处理过程中的热点数据。
为了便于使用者了解任务事件的处理状态,该方法还可以执行如下步骤:
接收查询请求,根据查询请求生成任务事件的处理状态信息,并将处理状态信息发送至查询模块。
在本发明实施例中,处理状态信息至少包括:未处理状态、处理中状态、正常结束状态、异常状态和超时状态。
为了提升数据的处理效率,根据目标任务调度脚本生成任务事件的调度数据,可以按照如下步骤执行:
解析目标任务调度脚本,得到调度解析结果;对调度解析结果进行编译,得到任务事件的调度数据。
在本发明实施例中,可以根据任务处理定义选择配套的脚本解析引擎,将任务处理定义中的脚本语言编译成运行时的运行时二进制代码。
在本发明实施例的任务调度处理机制下,借助任务处理节点的脚本解析器,节点的处理任务时的程序处理逻辑无需固化在任务执行装置,而是通过脚本解析器动态获取,这就为任务处理节点的通用性和扩展灵活性奠定了基础。
为了适应业务数据调度逻辑的更新,该方法还可以执行如下步骤:
更新数据存储节点中的任务调度脚本。
在本发明实施例中,通过更新数据存储节点中的任务调度脚本,更新业务事件的调度逻辑,从而将业务处理逻辑的更新从分布式任务处理节点的二进制执行文件更新中剥离出来,降低业务功能更新上线的复杂度。
例如,可以对脚本中获取业务数据的处理逻辑进行优化,将执行中需要用到的热点数据进行缓存,降低脚本执行中连接数据库获取业务数据的网络开销,提升执行效率。
本发明提供了一种任务调度执行方法、装置及***,参见图4所示的任务调度执行***信息传递关系示意图,该方案在分布式架构基础上,引入了脚本语言用于任务处理定义和任务处理逻辑,通过引入的脚本层,将变化的任务处理定义和相对稳定任务执行框架进行了隔离,既保障了基础处理框架的稳定性,业务处理逻辑可以快速使用脚本实现。通过沉淀业务领域的DSL,为常规的业务处理提供模板化代码,缓解存储过程转换为脚本语言过程中可能存在性能问题。另外,而脚本的实现方式又大大简化了分布式***上线新功能的部署,通过移行任务处理定义的方式快速上线业务功能。
本发明实施例中还提供了一种任务调度执行方法,应用于任务处理节点,参见图2所示的应用于任务处理节点的任务调度执行方法流程图,该方法包括:
步骤202,接收任务调度节点发送的任务事件和目标任务执行脚本。
在本发明实施例中,接收任务事件,包括接收任务处理参数和任务执行脚本。
步骤204,根据目标任务执行脚本生成任务事件的执行数据。
在本发明实施例中,对目标任务执行脚本进行处理,得到二进制的执行数据。
步骤206,根据执行数据和任务信息生成任务事件的执行结果。
在本发明实施例中,执行数据是编译后的任务,根据执行数据和存储在数据存储节点中的任务信息发起任务调用,得到任务事件的执行结果。
为了提升数据的处理效率,根据目标任务执行脚本生成任务事件的执行数据,可以按照如下步骤执行:
解析目标任务执行脚本,得到执行解析结果;对执行解析结果进行编译,得到任务事件的执行数据。
在本发明实施例中,可以根据任务处理定义选择配套的脚本解析引擎,将任务处理定义中的脚本语言编译成运行时的运行时二进制代码。
为了便于使用者获取最新的执行结果,该方法还可以执行如下步骤:
根据执行结果更新任务事件在数据存储节点的任务状态信息。
为了适应业务数据调度逻辑的更新,该方法还可以执行如下步骤:
更新数据存储节点中的任务执行脚本。
本发明实施例中还提供了一种任务调度执行装置,如下面的实施例所述。由于该装置解决问题的原理与任务调度执行方法相似,因此该装置的实施可以参见任务调度执行方法的实施,重复之处不再赘述。参见图9所示的应用于任务调度节点的任务调度执行装置结构框图,该装置包括:
事件中心模块11,用于获取任务事件,在数据存储节点存储任务事件的任务信息;任务信息包括任务类型信息;第一脚本解析模块12,用于根据任务类型信息在数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据目标任务调度脚本生成任务事件的调度数据;节点资源管理模块13,用于根据调度数据确定目标任务处理节点;任务分发模块14,用于将任务事件和目标任务执行脚本发送至目标任务处理节点,以使目标任务处理节点利用任务信息和目标任务执行脚本执行任务事件。
在一个实施例中,节点资源管理模块,具体用于:获取多个任务处理节点的资源状态数据;利用调度数据和资源状态数据确定目标任务处理节点。
在一个实施例中,参见图6所示的事件中心模块结构框图,事件中心模块,包括事件接收单元111,用于:接收目标接口发送的任务事件或接收***定时发送的任务事件。
在一个实施例中,参见图5所示的数据存储节点结构框图,数据存储节点30至少包括调度数据库31、业务数据库32、文件服务器33和缓存34;参见图6所示的事件中心模块结构框图,事件中心模块,包括事件持久化单元112,用于:将脚本信息存储至调度数据库;将任务信息存储至业务数据库;将第一目标信息存储至文件服务器;将第二目标信息存储至缓存。
在一个实施例中,参见图6所示的事件中心模块结构框图,事件中心模块,还包括状态查询单元113,用于:接收查询请求,根据查询请求生成任务事件的处理状态信息,并将处理状态信息发送至查询模块。
在一个实施例中,参见图7所示的第一脚本解析模块结构框图,第一脚本解析模块12,包括:第一脚本分析单元121,用于解析目标任务调度脚本,得到调度解析结果;第一脚本编译单元122,用于对调度解析结果进行编译,得到任务事件的调度数据。
在一个实施例中,该装置还包括第一更新模块,用于:更新数据存储节点中的任务调度脚本。
本发明实施例中还提供了一种任务调度执行装置,如下面的实施例所述。由于该装置解决问题的原理与任务调度执行方法相似,因此该装置的实施可以参见任务调度执行方法的实施,重复之处不再赘述。参见图10所示的应用于任务处理节点的任务调度执行装置结构框图;该装置包括:
任务接收模块21,用于接收任务调度节点发送的任务事件;第二脚本解析模块22,用于根据目标任务执行脚本生成任务事件的执行数据;任务执行模块23,用于根据执行数据和任务信息生成任务事件的执行结果。
在一个实施例中,参见图8所示的第二脚本解析模块结构框图;第二脚本解析模块22,包括:第二脚本分析单元221,用于解析目标任务执行脚本,得到执行解析结果;第二脚本编译单元222,用于对执行解析结果进行编译,得到任务事件的执行数据。
在一个实施例中,任务执行模块,还用于:根据执行结果更新任务事件在数据存储节点的任务状态信息。
在一个实施例中,该装置还包括第二更新模块,用于:更新数据存储节点中的任务执行脚本。
本发明实施例还提供一种任务调度执行***,参见图3所示的任务调度执行***结构框图,该***包括数据存储节点30、任务调度节点10和多个任务处理节点20;任务调度分别与数据存储节点、任务处理节点通信连接;任务处理节点与数据存储节点通信连接;任务调度节点包括上述任务调度执行装置;任务处理节点包括权利要求上述任务调度执行装置;数据存储节点用于存储任务调度脚本和任务执行脚本。
在本发明实施例中,任务调度节点10包括事件中心模块11,第一脚本解析模块12,节点资源管理模块13,和任务分发模块14。任务处理节点20包括任务接收模块21,第二脚本解析模块22,和任务执行模块23。
本发明实施例还提供一种计算机设备,参见图11所示的计算机设备结构示意框图,该计算机设备包括存储器81、处理器82及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一种任务调度执行方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的计算机设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有执行上述任一种任务调度执行方法的计算机程序。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (25)
1.一种任务调度执行方法,其特征在于,应用于任务调度节点,所述方法包括:
获取任务事件,在数据存储节点存储所述任务事件的任务信息;所述任务信息包括任务类型信息;
根据所述任务类型信息在所述数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据所述目标任务调度脚本生成所述任务事件的调度数据;
根据所述调度数据确定目标任务处理节点;
将所述任务事件和所述目标任务执行脚本发送至所述目标任务处理节点,以使所述目标任务处理节点利用所述任务信息和所述目标任务执行脚本执行所述任务事件。
2.根据权利要求1所述的方法,其特征在于,根据所述调度数据确定目标任务处理节点,包括:
获取多个任务处理节点的资源状态数据;
利用所述调度数据和所述资源状态数据确定目标任务处理节点。
3.根据权利要求1所述的方法,其特征在于,获取任务事件,包括:
接收目标接口发送的任务事件或接收***定时发送的任务事件。
4.根据权利要求1所述的方法,其特征在于,所述数据存储节点至少包括调度数据库、业务数据库、文件服务器和缓存;在数据存储节点存储所述任务事件的任务信息,包括:
将脚本信息存储至所述调度数据库;
将任务信息存储至所述业务数据库;
将第一目标信息存储至所述文件服务器;
将第二目标信息存储至所述缓存。
5.根据权利要求4所述的方法,其特征在于,还包括:
接收查询请求,根据所述查询请求生成所述任务事件的处理状态信息,并将所述处理状态信息发送至查询模块。
6.根据权利要求1所述的方法,其特征在于,根据所述目标任务调度脚本生成所述任务事件的调度数据,包括:
解析所述目标任务调度脚本,得到调度解析结果;
对所述调度解析结果进行编译,得到任务事件的调度数据。
7.根据权利要求1-6任一项所述的方法,其特征在于,还包括:更新数据存储节点中的任务调度脚本。
8.一种任务调度执行方法,其特征在于,应用于任务处理节点,所述方法包括:
接收任务调度节点发送的任务事件和目标任务执行脚本;
根据所述目标任务执行脚本生成所述任务事件的执行数据;
根据所述执行数据和任务信息生成所述任务事件的执行结果。
9.根据权利要求8所述的方法,其特征在于,根据所述目标任务执行脚本生成所述任务事件的执行数据,包括:
解析所述目标任务执行脚本,得到执行解析结果;
对所述执行解析结果进行编译,得到任务事件的执行数据。
10.根据权利要求9所述的方法,其特征在于,还包括:
根据所述执行结果更新所述任务事件在数据存储节点的任务状态信息。
11.根据权利要求8-10任一项所述的方法,其特征在于,还包括:更新数据存储节点中的任务执行脚本。
12.一种任务调度执行装置,其特征在于,应用于任务调度节点,所述装置包括:
事件中心模块,用于获取任务事件,在数据存储节点存储所述任务事件的任务信息;所述任务信息包括任务类型信息;
第一脚本解析模块,用于根据所述任务类型信息在所述数据存储节点中确定目标任务调度脚本和目标任务执行脚本,并根据所述目标任务调度脚本生成所述任务事件的调度数据;
节点资源管理模块,用于根据所述调度数据确定目标任务处理节点;
任务分发模块,用于将所述任务事件和所述目标任务执行脚本发送至所述目标任务处理节点,以使所述目标任务处理节点利用所述任务信息和所述目标任务执行脚本执行所述任务事件。
13.根据权利要求12所述的装置,其特征在于,所述节点资源管理模块,具体用于:
获取多个任务处理节点的资源状态数据;
利用所述调度数据和所述资源状态数据确定目标任务处理节点。
14.根据权利要求12所述的装置,其特征在于,所述事件中心模块,包括事件接收单元,用于:
接收目标接口发送的任务事件或接收***定时发送的任务事件。
15.根据权利要求12所述的装置,其特征在于,所述数据存储节点至少包括调度数据库、业务数据库、文件服务器和缓存;所述事件中心模块,包括事件持久化单元,用于:
将脚本信息存储至所述调度数据库;
将任务信息存储至所述业务数据库;
将第一目标信息存储至所述文件服务器;
将第二目标信息存储至所述缓存。
16.根据权利要求15所述的装置,其特征在于,所述事件中心模块,还包括状态查询单元,用于:
接收查询请求,根据所述查询请求生成所述任务事件的处理状态信息,并将所述处理状态信息发送至查询模块。
17.根据权利要求12所述的装置,其特征在于,所述第一脚本解析模块,包括:
第一脚本分析单元,用于解析所述目标任务调度脚本,得到调度解析结果;
第一脚本编译单元,用于对所述调度解析结果进行编译,得到任务事件的调度数据。
18.根据权利要求12-17任一项所述的装置,其特征在于,还包括第一更新模块,用于:
更新数据存储节点中的任务调度脚本。
19.一种任务调度执行装置,其特征在于,应用于任务处理节点,所述装置包括:
任务接收模块,用于接收任务调度节点发送的任务事件和目标任务执行脚本;
第二脚本解析模块,用于根据所述目标任务执行脚本生成所述任务事件的执行数据;
任务执行模块,用于根据所述执行数据和任务信息生成所述任务事件的执行结果。
20.根据权利要求19所述的装置,其特征在于,所述第二脚本解析模块,包括:
第二脚本分析单元,用于解析所述目标任务执行脚本,得到执行解析结果;
第二脚本编译单元,用于对所述执行解析结果进行编译,得到任务事件的执行数据。
21.根据权利要求20所述的装置,其特征在于,所述任务执行模块,还用于:
根据所述执行结果更新所述任务事件在数据存储节点的任务状态信息。
22.根据权利要求19-21任一项所述的装置,其特征在于,还包括第二更新模块,用于:
更新数据存储节点中的任务执行脚本。
23.一种任务调度执行***,其特征在于,包括:数据存储节点、任务调度节点和多个任务处理节点;所述任务调度分别与所述数据存储节点、所述任务处理节点通信连接;所述任务处理节点与所述数据存储节点通信连接;
所述任务调度节点包括权利要求12-18任一项所述的任务调度执行装置;
所述任务处理节点包括权利要求19-22任一项所述的任务调度执行装置;
所述数据存储节点用于存储任务调度脚本和任务执行脚本。
24.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11任一所述任务调度执行方法。
25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至11任一所述任务调度执行方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110170691.XA CN112905339B (zh) | 2021-02-08 | 2021-02-08 | 任务调度执行方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110170691.XA CN112905339B (zh) | 2021-02-08 | 2021-02-08 | 任务调度执行方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112905339A true CN112905339A (zh) | 2021-06-04 |
CN112905339B CN112905339B (zh) | 2024-02-13 |
Family
ID=76123964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110170691.XA Active CN112905339B (zh) | 2021-02-08 | 2021-02-08 | 任务调度执行方法、装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112905339B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254184A (zh) * | 2021-06-11 | 2021-08-13 | 中移(杭州)信息技术有限公司 | 任务调度方法、装置、调度***以及存储介质 |
CN113836219A (zh) * | 2021-08-10 | 2021-12-24 | 浙江中控技术股份有限公司 | 一种分布式数据结转调度***及方法 |
CN115756800A (zh) * | 2022-11-28 | 2023-03-07 | 中电金信软件有限公司 | 一种任务调度方法及任务调度装置 |
CN115794355A (zh) * | 2023-01-29 | 2023-03-14 | 中国空气动力研究与发展中心计算空气动力研究所 | 任务处理方法、装置、终端设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766132A (zh) * | 2017-06-25 | 2018-03-06 | 平安科技(深圳)有限公司 | 多任务调度方法、应用服务器及计算机可读存储介质 |
WO2020140683A1 (zh) * | 2019-01-04 | 2020-07-09 | 深圳壹账通智能科技有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN111488181A (zh) * | 2020-04-07 | 2020-08-04 | 广州虎牙科技有限公司 | 任务调度方法、装置、存储介质及服务器 |
CN111506412A (zh) * | 2020-04-22 | 2020-08-07 | 上海德拓信息技术股份有限公司 | 基于Airflow的分布式异步任务构建、调度***及方法 |
CN111522641A (zh) * | 2020-04-21 | 2020-08-11 | 北京嘀嘀无限科技发展有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
-
2021
- 2021-02-08 CN CN202110170691.XA patent/CN112905339B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766132A (zh) * | 2017-06-25 | 2018-03-06 | 平安科技(深圳)有限公司 | 多任务调度方法、应用服务器及计算机可读存储介质 |
WO2020140683A1 (zh) * | 2019-01-04 | 2020-07-09 | 深圳壹账通智能科技有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN111488181A (zh) * | 2020-04-07 | 2020-08-04 | 广州虎牙科技有限公司 | 任务调度方法、装置、存储介质及服务器 |
CN111522641A (zh) * | 2020-04-21 | 2020-08-11 | 北京嘀嘀无限科技发展有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN111506412A (zh) * | 2020-04-22 | 2020-08-07 | 上海德拓信息技术股份有限公司 | 基于Airflow的分布式异步任务构建、调度***及方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254184A (zh) * | 2021-06-11 | 2021-08-13 | 中移(杭州)信息技术有限公司 | 任务调度方法、装置、调度***以及存储介质 |
CN113836219A (zh) * | 2021-08-10 | 2021-12-24 | 浙江中控技术股份有限公司 | 一种分布式数据结转调度***及方法 |
CN115756800A (zh) * | 2022-11-28 | 2023-03-07 | 中电金信软件有限公司 | 一种任务调度方法及任务调度装置 |
CN115756800B (zh) * | 2022-11-28 | 2024-04-09 | 中电金信软件有限公司 | 一种任务调度方法及任务调度装置 |
CN115794355A (zh) * | 2023-01-29 | 2023-03-14 | 中国空气动力研究与发展中心计算空气动力研究所 | 任务处理方法、装置、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112905339B (zh) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112905339B (zh) | 任务调度执行方法、装置及*** | |
CN108076098B (zh) | 一种业务处理方法及*** | |
EP2831767B1 (en) | Method and system for processing data queries | |
US7386577B2 (en) | Dynamic determination of transaction boundaries in workflow systems | |
CN108280023B (zh) | 任务执行方法、装置和服务器 | |
CN111061788A (zh) | 一种基于云架构的多源异构数据转换整合***及其实现方法 | |
CN110233802B (zh) | 一种构建一主链多侧链的区块链架构的方法 | |
CN110602227B (zh) | 一种智能合约管理的方法以及相关装置 | |
CN112698952A (zh) | 计算资源统一管理方法、装置、计算机设备及存储介质 | |
US7752225B2 (en) | Replication and mapping mechanism for recreating memory durations | |
CN115269193A (zh) | 自动化测试中实现分布式负载均衡的方法及装置 | |
CN113094395B (zh) | 数据查询方法、计算机设备和存储介质 | |
US10785102B2 (en) | Modifying distributed application based on cloud diagnostic data | |
CN116974994A (zh) | 一种基于集群的高效能文件协作*** | |
CN111082964B (zh) | 一种配置信息的分发方法和装置 | |
CN110069565A (zh) | 一种分布式数据库数据批量处理的方法及装置 | |
CN111158956A (zh) | 一种集群***的数据备份方法及相关装置 | |
CN113190341B (zh) | 一种服务器资源调度方法及*** | |
US8631391B2 (en) | Method and a system for process discovery | |
CN112783892A (zh) | 一种通过事件驱动模型实现的链式任务执行引擎 | |
CN111782363A (zh) | 一种支持多业务场景调用的方法和流程*** | |
Mania et al. | Developing performance models from nonintrusive monitoring traces | |
CN111061789A (zh) | 一种智能电网基建信息管理*** | |
CN116051003B (zh) | 库存处理方法、装置、电子设备及存储介质 | |
CN117406929B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |