CN110287006A - 一种数据调度方法及系统 - Google Patents
一种数据调度方法及系统 Download PDFInfo
- Publication number
- CN110287006A CN110287006A CN201910498028.5A CN201910498028A CN110287006A CN 110287006 A CN110287006 A CN 110287006A CN 201910498028 A CN201910498028 A CN 201910498028A CN 110287006 A CN110287006 A CN 110287006A
- Authority
- CN
- China
- Prior art keywords
- task
- task list
- affairs
- dependence
- data
- 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
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/466—Transaction processing
-
- 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
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及任务调度管理技术领域,一种数据调度方法及系统,所述的数据调度方法包括:获取任务列表;根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;判断待运行事务是否与在运行的事务存在冲突;若不冲突,判断其是否超过并发限制;若不超过并发限制,运行该事务。本发明所述的方法使得任务的整体运行紧凑减少各系统空载时间,优化调度效率。
Description
技术领域
本发明涉及任务调度管理技术领域,具体涉及一种数据调度方法及系统。
背景技术
随着信息化的发展,多系统的不断融合,各信息系统间的数据互用越来越多,导致数据大批量的传输和转移的机会越来越大,原本数据库上自定义的定时作业在使用上越来越捉襟见肘,集中统一的数据调度方式就越发重要。
在现有的信息应用中,数据间的数据传输往往是在各自的数据库中建立定时作业进行数据传输,作业调度形式简单,跨平台数据转移数据缓慢。在信息系统增多同时传输数据表数据变大的情况下,作业冲突,数据重复,相互覆盖的情况时有发生,导致信息传输异常。
所以现有技术面临下列问题:
1.统一数据调度,可视化调度
2.基于时间之外的其他条件运行
3.可被动调度,即外部系统调度
为解决上述问题,本发明提出一种新的关于数据调度的方法及系统。
发明内容
本发明解决的技术问题是,提供了一种数据调度方法及系统。所述的一种数据调度方法及系统使得任务的整体运行紧凑减少系统各系统空载时间,优化调度效率。
为了解决上述技术问题,本发明提供的技术方案为:
一种数据调度方法,包括:
获取任务列表;
根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;
判断待运行事务是否与在运行的事务存在冲突;
若不冲突,判断其是否超过并发限制;
若不超过并发限制,运行该事务。
优选地,所述的任务列表包括:定时任务列表与临时任务列表;所述的定时任务列表为生成该时间点下的任务列表;所述的临时任务列表为生成人工发出的任务列表。
优选地,所述的查找出没有依赖其他任务的事务具体为:获取事务后对该事务运行流程进行判断,生成依赖关系结构图。所述的依赖关系结构图是判断某个任务先运行的依据。
优选地,所述的依赖关系结构图包括每项事务的数据调用的过程涉及服务器的顺序以及调用该服务器的通用运行时间。获取服务器调用顺序与调用时间的目的在于,系统可判断,某几个任务可同时运行,用于节省时间。
优选地,所述的通用运行时间是根据通过历史运行时间获取的,并根据多次的运行时间生成平均运行时长。初用的运行时间是是根据第一次的运行时间进行计算的,但在多次运行后,为了保证统计的时间是系统的平均水平,则多次获取运行时间进行存储,并生成平均时长,由此平均时长也是不断自动更新的。
优选地,所述的生成依赖关系结构图后还包括生成梯度图;所述的梯度图是根据依赖关系的顺序以及服务器调用的顺序形成的。梯度的特点在于,根据关系结构图判断任务的运行顺序,以及某几项任务可同时运行,进行任务运行顺序的排序。
优选地,所述的梯度图用于作为一种判断依据,判断下一任务与该任务对于数据的调用是否冲突,若不冲突进行任务的同时运行。
优选地,所述的梯度图的判断方法为根据调用的服务器运行的时间以及服务器的调用顺序,进行冲突性的判定。
优选地,所述的调用是对所有的调用方式进行统一的设置,防止主线的时空冲突。
优选地,所述的数据调度中,接口信息是暴露的,外部的调度信息传入后,通过调度信息进行监控,到达调用条件的情况下发起调度指令。
一种数据调度系统,包括:
任务列表获取模块:所述的任务列表获取模块用于获取任务列表;
依赖性判断模块:所述的依赖性判断模块用于根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;
冲突性判断模块:所述的冲突性判断模块用于待运行事务是否与在运行的事务存在冲突;
并发限制判断模块:所述的并发限制判断模块用于若不冲突,判断其是否超过并发限制;
任务运行模块:所述的任务运行模块用于若不超过并发限制,运行该事务。
优选地,所述的任务列表获取模块用于获取任务列表,所述的列表包括定时任务列表与临时任务列表;所述的定时任务列表为生成该时间点下的任务列表;所述的临时任务列表为生成人工发出的任务列表。
优选地,所述的依赖性判定模块用于根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务。所述的依赖性判断完成后生成依赖性关系图进行依赖性的示意,从而供系统找出下一个可运行的事务。
优选地,所述的冲突性判断模块用于待运行事务是否与在运行的事务存在冲突,若冲突跳出任务运行。判断待运行任务是否与在运行的事务存在冲突是将梯度图作为依据来进行判断的。
优选地,所述的并发限制判断模块用于若不冲突,判断其是否超过并发限制,所述的并行限制是根据系统的数据处理能力与数据调用能力进行判断的,判断系统可同时运行的任务数量。
优选地,所述的任务运行模块用于若不超过并发限制,运行该事务。
与现有技术相比,本发明具有的有益效果为:本发明的主要效果在于,打破各系统各自进行调度的信息独立壁垒,在通过对所有调度的过程信息与外部系统信息的监控,结合规定作业的运行依赖关系,使得多系统的数据传输调度作业能有序进行,同时使得整体运行紧凑减少系统各系统空载时间,优化调度效率。本发明所述的方法还通过建立依赖关系结构图与梯度图使得互不冲突的任务进行同时运行,从而达到快速运行的特点。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是本发明所述的一种数据调度方法的流程示意图;
图2是本发明所述的依赖关系结构图;
图3是本发明所述的梯度图;
图4是本发明所述的一种数据调度系统的结构图。
具体实施方式
现在结合附图对本发明作进一步详细的说明。这些附图均为简化的示意图,仅以示意方式说明本发明的基本流程图,因此其仅显示与本发明有关的流程。
实施例1
如图1所示,是本发明的一种数据调度方法,所述的方法具体为:
S1.获取任务列表;
S2.根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;
S3.判断待运行事务是否与在运行的事务存在冲突;
S4.若不冲突,判断其是否超过并发限制;
S5.若不超过并发限制,运行该事务。
步骤S1:获取任务列表;所述的任务列表包括定时任务列表与临时任务列表;所述的定时任务列表为生成该时间点下的任务列表;所述的临时任务列表为生成人工发出的任务列表。
步骤S2:根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务。所述的查找出没有依赖其他任务的事务具体为:获取事务后对该事务运行流程进行判断,生成依赖关系结构图。所述的依赖关系结构图包括每项事务的数据调用的过程涉及服务器的顺序以及调用该服务器的通用运行时间。所述的通用运行时间是根据通过历史运行时间获取的,并根据多次的运行时间生成平均运行时长。
步骤S3:判断待运行事务是否与在运行的事务存在冲突;若存在冲突结束程序的运行。
所述的生成依赖关系结构图后还包括生成梯度图;所述的梯度图是根据依赖关系的顺序以及服务器调用的顺序形成的。梯度的特点在于,根据关系结构图判断任务的运行顺序,以及某几项任务可同时运行,进行任务运行顺序的排序。所述的梯度图用于作为一种判断依据,判断下一任务与该任务对于数据的调用是否冲突,若不冲突进行任务的同时运行。所述的梯度图的判断方法为根据调用的服务器运行的时间以及服务器的调用顺序,进行冲突性的判定。
所述的对所有的调用方式进行统一的设置,防止主线的时空冲突。
所述的电镀接口信息是暴露的,接收外部的调度信息。外部的调度信息传入后,通过调度信息进行监控,到达调用条件的情况下发起调度指令。
步骤S4:若不冲突,判断其是否超过并发限制;所述的并发限制为判断可同时进行运行的任务的个数。所述的并发限制是根据系统的数据处理能力与数据的调用能力来判断的,判断可同时运行几个任务。
步骤S5:若不超过并发限制,运行该事务。
实施例2
所述的依赖关系结构图与梯度图可以如下列实施方式:
若现有任务A、B、C、D四个任务,当任务A依赖于任务B、C,任务B、C依赖于任务D。若被调用的服务器有a、b、c、d、e、f这六个数据服务器,所述的任务A任务调用的服务器为a、b、c,任务B调用的服务器为e、c、f,任务C调用的服务器为c、b、d,任务D调用的服务器为a、e、b,若并行任务的个数最多可为三个。
首先,生成的依赖关系结构图如图2所示,生成依赖关系图后,根据依赖关系图生成梯度图。
所述的梯度图作为判断运行任务是否冲突的依据,该过程为:由于C任务与B任务对D任务存在依赖关系,首先运行任务D,任务D运行完成后,判断任务C与任务B的冲突性,如图3所示的梯度图,B任务与C任务都调用c处理器,在梯度图中数字显示的是该服务器调用时的平均运行时长,由此可看出,B任务与C任务可同时调用,C任务调用完c后用时为1,此时B再调用C在时间上是不冲突的,且也是最省时的。当任务B与任务C完成后,系统运行任务A,从而实现在并行允许的范围内,不冲突的状态下,进行自动判断运行顺序,实现快速的任务的运行。
系统可以自动计算所有的调用系统的时间或者调用顺序会不会冲突,从而提供一种最省时的调用方法。
实施例3
如图4所示,本发明提供了一种数据调度系统:
任务列表获取模块1:所述的任务列表获取模块用于获取任务列表;
依赖性判定模块2:所述的依赖性判定模块用于根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;
冲突性判断模块3:所述的冲突性判断模块用于待运行事务是否与在运行的事务存在冲突;
并发限制判断模块4:所述的并发限制判断模块用于若不冲突,判断其是否超过并发限制;
任务运行模块5:所述的任务运行模块用于若不超过并发限制,运行该事务。
所述的任务列表获取模块1与依赖性判断模块2连接,所述的依赖性判断模块与冲突性判断模块3连接,所述的冲突性判断模块与并发限制判断模块4连接,所述的并发限制判断模块4与运行模块5连接;
所述的任务列表获取模块1:用于获取任务列表,所述的列表包括定时任务列表与临时任务列表;所述的定时任务列表为生成该时间点下的任务列表;所述的临时任务列表为生成人工发出的任务列表。
所述的依赖性判定模块2:用于根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务。所述的依赖性判断完成后生成依赖性关系图进行依赖性的示意,从而供系统找出下一个可运行的事务。
所述的冲突性判断模块3:用于待运行事务是否与在运行的事务存在冲突,若冲突跳出任务运行。判断待运行任务是否与在运行的事务存在冲突是将梯度图作为依据来进行判断的。
所述的并发限制判断模块4:用于若不冲突,判断其是否超过并发限制,所述的并行限制是根据系统的数据处理能力与数据调用能力进行判断的,判断系统可同时运行的任务数量。
所述的任务运行模块5:用于若不超过并发限制,运行该事务。
所述的冲突性判断模块3若判断任务冲突,返回任务列表模块1进行任务列表的重新获取;所述的并发限制判断模块4若判断超过并发限制,返回任务列表获取模块1进行任务列表的重新获取。
上列详细说明是针对本发明可行实施例的具体说明,以上实施例并非用以限制本发明的专利范围,凡未脱离本发明所为的等效实施或变更,均应包含于本案的专利范围中。
Claims (10)
1.一种数据调度方法,其特征在于,包括:
获取任务列表;
根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;
判断待运行事务是否与在运行的事务存在冲突;
若不冲突,判断其是否超过并发限制;
若不超过并发限制,运行该事务。
2.根据权利要求1所述的一种数据调度方法,其特征在于,所述的任务列表包括:定时任务列表与临时任务列表;所述的定时任务列表为生成该时间点下的任务列表;所述的临时任务列表为生成人工发出的任务列表。
3.根据权利要求1所述的一种数据调度方法,其特征在于,所述的查找出没有依赖其他任务的事务具体为:获取事务后对该事务运行流程进行判断,生成依赖关系结构图。
4.根据权利要求3所述的一种数据调度方法,其特征在于,所述的依赖关系结构图包括每项事务的数据调用的过程涉及服务器的顺序以及调用该服务器的通用运行时间。
5.根据权利要求4所述的一种数据调度方法,其特征在于,所述的通用运行时间是根据通过历史运行时间获取的,并根据多次的运行时间生成平均运行时长。
6.根据权利要求3所述的一种数据调度方法,其特征在于,所述的生成依赖关系结构图后还包括生成梯度图;所述的梯度图是根据依赖关系的顺序以及服务器调用的顺序形成的。
7.根据权利要求6所述的一种数据调度方法,其特征在于,所述的梯度图用于作为一种判断依据,判断下一任务与该任务对于数据的调用是否冲突,若不冲突进行任务的同时运行。
8.根据权利要求7所述的一种数据调度方法,其特征在于,所述的梯度图的判断方法为根据调用的服务器运行的时间以及服务器的调用顺序,进行冲突性的判定。
9.根据权利要求1所述的一种数据调度方法,其特征在于,所述的数据调度中,接口信息是暴露的,外部的调度信息传入后,通过调度信息进行监控,到达调用条件的情况下发起调度指令。
10.一种数据调度系统,其特征在于,包括:
任务列表获取模块:所述的任务列表获取模块用于获取任务列表;
依赖性判断模块:所述的依赖性判断模块用于根据任务列表进行依赖性判定,查找出没有依赖其他任务的事务标记为待运行事务;
冲突性判断模块:所述的冲突性判断模块用于待运行事务是否与在运行的事务存在冲突;
并发限制判断模块:所述的并发限制判断模块用于若不冲突,判断其是否超过并发限制;
任务运行模块:所述的任务运行模块用于若不超过并发限制,运行该事务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910498028.5A CN110287006A (zh) | 2019-06-10 | 2019-06-10 | 一种数据调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910498028.5A CN110287006A (zh) | 2019-06-10 | 2019-06-10 | 一种数据调度方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110287006A true CN110287006A (zh) | 2019-09-27 |
Family
ID=68003604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910498028.5A Pending CN110287006A (zh) | 2019-06-10 | 2019-06-10 | 一种数据调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287006A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112001822B (zh) * | 2020-11-02 | 2021-02-02 | 点击律(上海)网络科技有限公司 | 一种应用于知识产权民事诉讼案件的证据智能调配方法 |
CN115946126A (zh) * | 2023-02-22 | 2023-04-11 | 深圳市欧拉智造科技有限公司 | 任务执行控制方法及机器人 |
CN116089403A (zh) * | 2023-04-11 | 2023-05-09 | 北京奥星贝斯科技有限公司 | 一种数据库的流量回放方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120291045A1 (en) * | 2011-05-13 | 2012-11-15 | Martin Jeremy D | Registration and execution of highly concurrent processing tasks |
CN103631831A (zh) * | 2012-08-29 | 2014-03-12 | 阿里巴巴集团控股有限公司 | 一种数据备份方法及装置 |
US20150089511A1 (en) * | 2013-09-26 | 2015-03-26 | Synopsys, Inc. | Adaptive parallelization for multi-scale simulation |
CN109033301A (zh) * | 2018-07-16 | 2018-12-18 | 中国科学技术大学 | 一种基于图形处理器的数据库事务执行方法 |
-
2019
- 2019-06-10 CN CN201910498028.5A patent/CN110287006A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120291045A1 (en) * | 2011-05-13 | 2012-11-15 | Martin Jeremy D | Registration and execution of highly concurrent processing tasks |
CN103631831A (zh) * | 2012-08-29 | 2014-03-12 | 阿里巴巴集团控股有限公司 | 一种数据备份方法及装置 |
US20150089511A1 (en) * | 2013-09-26 | 2015-03-26 | Synopsys, Inc. | Adaptive parallelization for multi-scale simulation |
CN109033301A (zh) * | 2018-07-16 | 2018-12-18 | 中国科学技术大学 | 一种基于图形处理器的数据库事务执行方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112001822B (zh) * | 2020-11-02 | 2021-02-02 | 点击律(上海)网络科技有限公司 | 一种应用于知识产权民事诉讼案件的证据智能调配方法 |
CN115946126A (zh) * | 2023-02-22 | 2023-04-11 | 深圳市欧拉智造科技有限公司 | 任务执行控制方法及机器人 |
CN116089403A (zh) * | 2023-04-11 | 2023-05-09 | 北京奥星贝斯科技有限公司 | 一种数据库的流量回放方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106802826B (zh) | 一种基于线程池的业务处理方法及装置 | |
CN109901926A (zh) | 基于大数据行为调度应用任务的方法、服务器及存储介质 | |
CN101084680B (zh) | 在电信服务和/或网络管理平台中管理资源的方法、相应平台及其计算机程序产品 | |
CN105354762B (zh) | 一种电力客服业务工单识别与分配系统及方法 | |
CN110287006A (zh) | 一种数据调度方法及系统 | |
CN106156115B (zh) | 一种资源调度方法及装置 | |
CN104298550B (zh) | 一种面向Hadoop的动态调度方法 | |
CN110083528A (zh) | 测试任务的分配方法、装置、计算机设备及存储介质 | |
CN109347974B (zh) | 提高在线服务质量和集群资源利用率的混合调度系统 | |
CN106844198A (zh) | 一种分布式调度自动化测试平台及方法 | |
CN111125444A (zh) | 大数据任务调度管理方法、装置、设备及存储介质 | |
CN111506398B (zh) | 任务调度方法和装置、存储介质、电子装置 | |
CN109857535B (zh) | 面向Spark JDBC的任务优先级控制的实现方法及装置 | |
CN111181773B (zh) | 面向异构边云协同智能系统的多组件应用的延迟预测方法 | |
CN106201676A (zh) | 一种任务分配方法及装置 | |
CN108491254A (zh) | 一种数据仓库的调度方法及装置 | |
CN112685153A (zh) | 微服务调度方法、装置以及电子设备 | |
CN105630588A (zh) | 一种分布式作业调度方法和系统 | |
CN115543577B (zh) | 基于协变量的Kubernetes资源调度优化方法、存储介质及设备 | |
CN110928655A (zh) | 一种任务处理方法及装置 | |
CN110472876A (zh) | 一种任务调度方法、装置及计算机可读存储介质 | |
Babiceanu et al. | Real-time holonic scheduling of material handling operations in a dynamic manufacturing environment | |
CN107885600A (zh) | 批量定时任务的调度方法、装置和计算机设备 | |
CN101833319A (zh) | 面向多重入制造系统在线调度的单台设备匹配重调度方法 | |
CN115269147A (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 |