一种任务调度方法和系统技术方案

技术编号:6952176 阅读:157 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种任务调度方法和系统。所述方法包括:在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置;读取所述配置并将各任务节点初始化为网状关系结构;根据所述网状关系结构进行任务调度。本发明专利技术的技术方案,能剥离任务的具体实现和任务之间的依赖关系,使得系统实现更加灵活,能够根据具体业务的不同快速做出反应,进一步提高效率。

【技术实现步骤摘要】

本专利技术涉及数据业务处理
,特别是涉及一种任务调度方法和系统
技术介绍
数据分析的基础是要建立符合数据仓库模型的数据,这个过程由几部分组成1) 用户从数据源抽取出所需的数据;幻清洗掉不合法的数据;幻转换成符合预先定义好的数据仓库模型的数据;4)将符合数据仓库模型的数据装载到数据仓库中。即该过程包括抽取(Extract)、清洗(Cleaning)、转换CTransform)、装载(Load)这四个大部分。这个过程就是ETL(Extract-Transform-Load),是构建数据仓库的重要步骤。ETL在实际中每个部分又由各个小步骤组成,每个步骤之间是有先后依赖关系的。 例如抽取C这个步骤是必须等待抽取A和抽取B这两个步骤都完成后才能进行。有时需要按照业务要做相应的改变抽取A,B, C这三个步骤的具体实现不变,但是他们的先后依赖关系变化成了,抽取C必须等待抽取B完成,抽取B必须等待抽取A完成。也就是说每个步骤的具体实现不变,而步骤与步骤之间的先后依赖关系是要改变。现有的ETL任务调度系统中,由于每个步骤的具体实现和各个步骤之间的先后依赖关系掺杂在一起,很难针对业务需求的变更而做出快速的改变。
技术实现思路
本专利技术提供了一种任务调度方法,该方法能够剥离任务的具体实现和任务之间的依赖关系。本专利技术还提供了一种任务调度系统,该系统能够剥离任务的具体实现和任务之间的依赖关系。为达到上述目的,本专利技术的技术方案是这样实现的本专利技术公开了一种任务调度方法,该方法包括在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置;读取所述配置并将各任务节点初始化为网状关系结构;根据所述网状关系结构进行任务调度。本专利技术还公开了一种任务调度系统,该系统包括配置模块,用于在数据库模块中的关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置;数据库模块,用于保存关系数据库;初始化模块,用于读取所述数据库模块中的关系数据库中的配置并将各任务节点初始化为网状关系结构保存到内存模块中;内存模块,用于保存初始化模块生成的任务节点的网状关系结构;调度模块,用于根据内存模块中的所述网状关系结构进行任务调度。由上述可见,本专利技术中,在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置;读取所述配置并将各任务节点初始化为网状关系结构;根据所述网状关系结构进行任务调度的术方案,能剥离任务的具体实现和任务之间的依赖关系,使得系统实现更加灵活,能够根据具体业务的不同快速做出反应,进一步提高效率。附图说明图1是本专利技术实施例中的一种任务调度方法的流程图;图2是本专利技术实施例中的一个网状关系结构图;图3是本专利技术实施例中的任务调度的流程图;图4是本专利技术实施例中的ETL业务调度的配置过程示意图;图5是本专利技术实施例中的一种任务调度系统的组成结构示意图。具体实施例方式为了使本专利技术的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本专利技术进行详细描述。图1是本专利技术实施例中的一种任务调度方法的流程图。如图1所示,该方法包括101,在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置。102,读取所述配置并将各任务节点初始化为网状关系结构。本步骤中,在内存中生成任务节点的网状关系结构,具体来说读取各任务节点间的依赖关系配置,生成任务节点的网状关系将结构,读取各任务节点执行所需的配置信息, 在网状关系结构中的每个任务节点中保存该任务节点执行所需的资源信息;其中,在该网状关系结构中一个任务节点对应一个任务,各任务节点之间的网状关系表示各任务节点之间的依赖关系,在每个任务节点中保存有该任务节点的执行所需的资源信息。步骤101和102是任务调度系统的初始化过程。103,根据所述网状关系结构进行任务调度。从内存中的网状关系结构中的每个起始任务节点开始,根据各任务节点之间的依赖关系以及各任务节点中所保存的资源信息进行任务调度;其中,起始任务节点是没有被其它任务节点依赖的节点。本步骤103是任务调度系统的具体任务调度过程。图1所示的技术方案,由于预先在关系数据库中可以根据具体任务调度的具体情况对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置,且在实际进行任务调度时读取上述配置并将各任务节点初始化为网状关系结构,进而可以直接根据该网状关系结构进行任务调度,即本实施例能够剥离任务的具体实现和任务之间的依赖关系,使得系统实现更加灵活,能够根据具体业务的不同快速做出反应,进一步提高效率。图1所示方法中,所述硬盘上的关系数据库包括第一列表和第二列表,其中,第一列表中保存各任务节点之间的依赖关系;第二列表中保存各任务节点执行所需的资源信息。所述在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置包括在所述第一列表中配置各任务节点及其之间的依赖关系,其中包括至少一个起始任务节点和至少一个结束任务节点;在所述第二列表中配置各任务节点对应的执行所需资源信息。从所述第一列表中读取各任务节点之间的依赖关系至内存中,以及从所述第二列表中读取各任务节点执行所需的资源信息至内存中。具体来说读取第二列表中的各任务节点执行所需的资源信息,以及读取第一列表中的各任务节点之间的依赖关系;根据所读取的各任务节点执行所需的资源信息,在内存中构建各个任务节点,以及根据所读取的各任务节点之间的依赖关系,建立内存中的各任务节点之间的关系,形成任务节点的网状关系结构。第一列表和第二列表可以分别由两个表实现,也可以在一个表中实现。在第一列表中配置的初始节点可以有一个或多个,即可以实现一个或多个起始节点,同样,在第一列表中配置的结束节点也可以有一个或多个,即可以实现一个或多个结束节点;另外,还可以通过配置实现多层依赖关系。在本专利技术的一个实施例中的第一列表和第二列表分别如表1和表2所示,本文档来自技高网...

【技术保护点】
1.一种任务调度方法,其特征在于,该方法包括:在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置;读取所述配置并将各任务节点初始化为网状关系结构;根据所述网状关系结构进行任务调度。

【技术特征摘要】
1.一种任务调度方法,其特征在于,该方法包括在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置;读取所述配置并将各任务节点初始化为网状关系结构;根据所述网状关系结构进行任务调度。2.根据权利要求1所述的方法,其特征在于,所述读取所述配置并将各任务节点初始化为网状关系结构包括读取各任务节点间的依赖关系配置,生成任务节点的网状关系结构,读取各任务节点执行所需的配置信息,在网状关系结构中的每个任务节点中保存该任务节点执行所需的资源信息;所述网状关系结构包括至少一个起始任务节点和至少一个结束任务节点,其中,所述起始任务节点是没有被其它任务节点依赖的节点。3.根据权利要求2所述的方法,其特征在于,所述关系数据库包括第一列表和第二列表,其中,第一列表中保存各任务节点之间的依赖关系;第二列表中保存各任务节点执行所需的资源信息。4.根据权利要求3所述的方法,其特征在于,所述在关系数据库中对各任务节点执行所需资源信息和各任务节点间的依赖关系分别进行配置包括在所述第一列表中配置各任务节点及其之间的依赖关系,其中包括至少一个起始任务节点和至少一个结束任务节点;在所述第二列表中配置各任务节点对应的执行所需资源信肩、ο5.根据权利要求3所述的方法,其特征在于,所述读取各任务节点间的依赖关系配置包括从所述第一列表中读取各任务节点之间的依赖关系至内存中;所述读取各任务节点执行所需的配置信息包括从所述第二列表中读取各任务节点执行所需的资源信息至内存中。6.根据权利要求1所述的方法,其特在于,所述根据所述网状关系结构进行任务调度包括A、启动当前任务节点若当前是流程的开始,所述当前任务节点是起始任务节点,若当前不是流程的开始,所述当前任务节点是当前到达的任务节点;其中,起始任务节点是没有被其它任务节点依赖的节点;B、判断当前任务节点是否依赖其它的任务节点,是则将当前任务节点转为等待状态, 到达被依赖的任务节点,执行步骤A,否则执行步骤C ;C、根据当前任务节点中保存的资源信息,执行当前任务节点对应的任务,判断当前任务节点对应的任务是否执行完毕,是则执行步骤D,否则继续执行C ;D、判断当前任务节点是否被其它的任务节点依赖,是则执行步骤E,否则结束流程;E、触发处于等待状态的依赖于所述当前任务节点的任务节点,将该触发的任务节点作为当前任务节点,执行步骤C。7.根据权利要求1至6中任一项所述的方法,其特征在于,所述各任务节点包括抽取任务节点、清洗任务节点、转换任务节点和装载任务节点;其中装载任务节点为依赖于其它装载任务节点或转换任务节点,且没有被其它任务节点依赖的起始任务节点;或者,装载任务节点为依赖于其它装载任务节点,且被其它装载任务节点依赖的节点;或者,装载任务节点为依赖于转换任务节点,且被其它装载任务节点依赖的节占.I— /、、、 转换任务节点为依赖于清洗任务节点,且被装载任务节点依赖的节点;或者,转换任务节点为依赖于清洗任...

【专利技术属性】
技术研发人员:潘丹
申请(专利权)人:北京新媒传信科技有限公司
类型:发明
国别省市:11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1