一种数据仓库的任务调度方法及装置制造方法及图纸

技术编号:9694578 阅读:97 留言:0更新日期:2014-02-21 00:45
本申请公开了一种数据仓库的任务调度方法,应用于数据仓库进行任务调度,首先为每种任务设置调度类型,然后读取任务,提取任务的调度类型,按照任务的调度类型,选择任务执行的触发方式,最后根据触发方式,触发执行任务。同时还公开了一种数据数仓的任务调度装置,包括调度类型设置模块,调度扫描模块和任务执行模块,通过为每个任务设置调度类型,并按照调度类型选择不同的触发方法进行处理,可以灵活的根据用户的需求来处置任务,并能够有效降低资源的急剧消耗带来宕机的风险,提高用户的满意度。

【技术实现步骤摘要】
一种数据仓库的任务调度方法及装置
本申请涉及数据库
,尤其涉及数据仓库的任务调度方法及装置。
技术介绍
随着90年代后期Internet的兴起与飞速发展,我们进入了一个新的时代,大量的信息和数据,迎面而来,用科学的方法去整理数据,从而从不同视角对企业经营各方面信息的精确分析、准确判断,比以往更为迫切。数据仓库(DataWarehouse)的概念应运而生,数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合。随着企业信息化程度的不断提高,企业内部积累了大量的业务数据,数据仓库用于对这些相互独立、分散的数据进行统一的处理,以满足企业高层决策与分析需要。随着数据仓库系统带来的良好效果,各行各业的单位,已经能很好的接受“整合数据,从数据中找知识,运用数据知识、用数据说话”等新的关系到改良生产活动各环节、提高生产效率、发展生产力的理念。任务在数据仓库的概念中就是最小处理数据动作的一种技术实现,在一个数据仓库中,数据的处理都是由成千上万的各种处理任务完成。在当前流行的数据仓库平台中,任务调度一般都实现了根据任务依赖关系,进行任务并发调度,并可以设置任务运行的并发度及任务的优先级,优先级越高,任务会优先触发执行。但在一些实际使用场景中,仍然存在种种问题,例如:由于数据平台运算资源不够,发生整个平台宕掉;任务的触发时间和完成时间没有达到业务方的需求等等。特别地,在传统的任务调度方法中,首先进行触发时间判断,触发时间判断为判断读取到的可用任务是否满足时间触发条件,只有当读取到可用任务时的时间大于设置的触发时间,才继续往下判断,否则终止判断,退出,并进行下一个等待任务的触发判断;然后进行并发数判断,每类任务类型都设有可运行的最大并发数,当读取到的任务相应的任务类型正在运行的并发数小于等于设置的最大并发数时,那么触发执行该任务,否则终止,退出,并进行下一个等待任务的触发判断。可见在传统的任务调度方法中可以设置任务的触发时间和通过设置任务类型的最大并发数做到资源的控制,但实际使用过程中,并不准确,也做不到很好的控制,主要原因为,调度本身并不能准确的知道被触发执行的任务到底使用了多少资源,需要运行多少时间,也许少量几个任务就能把机器运算资源使用光,导致运算资源不足,延误运算时间,甚至运算平台宕掉。因此现有的任务调度方法没办法真实的解决资源使用/时间控制的问题,到最后经常发生运算平台负载过重甚至宕机的现象,而且任务的运算时间也难以把握,导致很多时候满足不了业务方的时间需求。
技术实现思路
本申请的目的是在传统调度方法的基础上,根据任务的调度类型来调度任务,避免由于数据平台运算资源不够,发生整个平台宕掉,或者任务的触发时间和完成时间没有达到业务方的需求。一种数据仓库的任务调度方法,应用于数据仓库进行任务调度,所述数据仓库的任务均配置有调度类型,所述调度类型包括资源优先或时间优先,不同所述调度类型对应不同任务执行的触发方式,所述任务调度方法包括步骤:读取任务,提取所述任务的调度类型,按照所述任务的调度类型,选择所述调度类型所对应的任务执行的触发方式;以所述对应的任务执行的触发方式触发执行所述任务。当所述的调度类型为资源优化时,以所述对应的任务执行的触发方式触发执行所述任务,包括步骤:判断执行任务的运算资源平台的可用资源是否满足所述任务预计需要的任务资源,如果满足则进行下一步,否则返回去读取下一个任务;触发执行所述任务;收集所述任务实际使用资源信息。进一步地,所述任务预计需要的任务资源是通过统计一定周期内每次运行时实际用到的资源情况,做平均值运算。当所述调度类型为时间优先时,以所述对应的任务执行的触发方式触发执行所述任务,包括步骤:判断读取到的任务是否满足时间触发条件,只有当读取到任务时的时间大于设置的触发时间,则进行下一步,否则返回到读取下一个任务;触发执行所述任务。本申请还提出了一种数据仓库的任务调度装置,应用于数据仓库进行任务调度,所述调度装置包括依次连接的调度类型设置模块,调度扫描模块和任务执行模块,其中:所述调度类型设置模块,用于为每种任务设置调度类型,所述调度类型包括资源优先或时间优先,不同所述调度类型对应不同任务执行的触发方式;所述调度扫描模块,用于读取任务,按照所述任务的调度类型,选择对应的任务执行的触发方式;所述任务执行模块,用于根据所述的触发方式,触发执行所述的任务。进一步地,所述任务执行模块还包括判断单元,用于在选择触发方式后,判断当前条件是否满足触发条件。作为本申请的一种方式,所述任务执行模块还包括任务占用资源预估单元,用于收集所述任务实际使用资源信息,预估执行任务需要的任务资源。作为本申请的另一种方式,所述任务执行模块还包括触发时间设置单元,用于设置任务的触发时间。本申请的数据仓库的任务调度方法,让用户自己选择要满足的数据场景,如运算资源的稳定对整个平台比较重要,那么可以选择资源优先的调度策略,最大程度保障平台的稳定,如实现业务时间比较重要,那么可以选择时间优先的调度策略,最大程度保障任务执行时间接近业务要求的时间完成。本申请的数据仓库的任务调度装置,通过调度类型设置模块为任务设置调度类型,并根据调度类型选择触发方式,可以灵活的根据用户的需求来处置任务,并能够有效降低资源的急剧消耗带来宕机的风险,提高用户的满意度。附图说明图1为本申请数据仓库的任务调度方法的流程图;图2为本申请资源优化触发方式下调度方法流程图;图3为本申请时间优化触发方式下调度方法流程图;图4为本申请数据仓库的任务调度装置结构示意图。具体实施方式下面结合附图和实施例对本申请技术方案做进一步详细说明,以下实施例不构成对本申请的限定。本申请数据仓库任务调度方法流程图如图1所示,包括步骤:步骤101、为每种任务配置调度类型。具体地,每种任务都配置有调度类型,调度类型包括资源优先或时间优先,当然也可以根据其他主题来进行配置,本实施例仅以资源优先和时间优先来进行说明。用户在配置任务属性信息时,任务的调度类型作为一个属性信息配置进去,让用户自己选择需要保证的对象,如需要保证资源的可用性,选择配置调度类型为资源优先;需要保证业务时间的准时性,选择配置调度类型为时间优先。需要说明的是,调度类型配置的方法不限于采用用户主动配置的方法,也可以由系统根据任务的种类采用该种类默认的调度类型来自动为任务设置调度类型。或者采用其他方式来确定任务的调度类型,如根据任务的优先级,或者根据任务的发起对象等。步骤102、读取任务,按照任务的调度类型,选择任务执行的触发方式。数据仓库通过调度扫描来读取任务,一般来说,读取的时候按照优先级读取处于等待运行的可用任务,等待运行的可用任务为符合依赖条件的处于等待运行的任务,也就是说当一个任务的父任务都是成功结束状态,那么该任务即为一个等待运行的可用任务。调度扫描读取一个等待运行的可用任务,读取的时候按照优先级读取,读取后首先提取该任务的调度类型,按照该任务的调度类型,选择任务执行的触发方式。步骤103、按照所选择的触发方式,触发执行该任务。需要说明的是,数据仓库为每种调度类型设置了各自对应的触发方式,每种触发方式又对应了不同的触发条件。调度扫描将按照每种任务设置的调度类型,选择任务执行的触发方式,如果是资本文档来自技高网
...
一种数据仓库的任务调度方法及装置

【技术保护点】
一种数据仓库的任务调度方法,应用于数据仓库进行任务调度,其特征在于,所述数据仓库的任务均配置有调度类型,所述调度类型包括资源优先或时间优先,不同所述调度类型对应不同任务执行的触发方式,所述任务调度方法包括步骤:读取任务,提取所述任务的调度类型,按照所述任务的调度类型,选择所述调度类型所对应的任务执行的触发方式;以所述对应的任务执行的触发方式触发执行所述任务。

【技术特征摘要】
1.一种数据仓库的任务调度方法,应用于数据仓库进行任务调度,其特征在于,所述数据仓库的任务均配置有调度类型,所述调度类型包括资源优先或时间优先,不同所述调度类型对应不同任务执行的触发方式,所述任务调度方法包括步骤:读取任务,提取所述任务的调度类型,按照所述任务的调度类型,选择所述调度类型所对应的任务执行的触发方式;以所述对应的任务执行的触发方式触发执行所述任务;其中:当调度类型为资源优先时,判断执行任务的运算资源平台的可用资源是否满足所述任务预计需要的任务资源,如果满足则进行下一步,否则返回去读取下一个任务;触发执行所述任务;收集所述任务实际使用资源信息;当所述调度类型为时间优先时,判断读取到的任务是否满足时间触发条件,只有当读取到任务时的时间大于设置的触发时间,则进行下一步,否则返回到读取下一个任务;触发执行所述任务。2.如权利要求1所述的任务调度方法,其特征在...

【专利技术属性】
技术研发人员:高继军
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

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

1