The embodiment of the invention provides a scheduling method and device for data warehouse. The method includes acquiring all the tasks to be executed in the current scheduling cycle and combining them into a dependency table according to their interdependencies, in which each task to be executed includes at least task ID and task status, and obtaining corresponding task results if it is judged that any task to be executed meets the preset execution conditions. According to the task ID of the task to be executed, the corresponding checking rules are obtained, and the result of the task is checked according to the checking rules; if the checking passes, the task state of the task to be executed is marked as a successful state; wherein the successful state is used to determine whether the downstream task of the task to be executed meets the preset execution conditions, and the invention provides a checking rule for the task result. The implementation ensures the reliability and correctness of the task results by checking the obtained task results, thereby improving the execution efficiency and accuracy of the tasks to be executed in the whole task dependency list, and saving a lot of checking time.
【技术实现步骤摘要】
一种数据仓库的调度方法及装置
本专利技术实施例涉及计算机
,尤其涉及一种数据仓库的调度方法及装置。
技术介绍
数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。它是面向主题、集成的、具有稳定性和时变性。在数据仓库的整个数据执行流程中,调度系统必不可缺。整个数据仓库包含4部分的内容,包含数据源,数据仓库,联机分析执行系统(OLAP,on-lineanalyticalprocessing)以及前端报表,数据挖掘,推荐等应用系统。在从数据源到数据仓库以及应用产出的整个数据流动过程中,调度系统作为一系统软件在数据仓库架构中占据重要地位。目前作业调度系统在各个公司都有应用,从最简单的Contab,Quartz单机定时调度程序到知名开源系统如Oozie,azkaban,zeus等都会存在,拥有大型数据团队的公司也会定制适合自己业务场景的调度系统。总体来讲,目前市面上的作业调度系统根据功能定位,主要分为两大类方向:定时分片类作业调度系统和数据库可用性组(DatabaseAvailabilityGroup,DAG)工作流类作业调度系统。这两类系统的架构和功能实现通常存在很大的差异,下面分别举例说明:1.Crontab:crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。crontab是用来让使用 ...
【技术保护点】
1.一种数据仓库的调度方法,其特征在于,包括:获取当前调度周期内所有待执行任务,并根据相互间的依赖关系,组合成依赖关系表;其中,每个待执行任务至少包括任务ID和任务状态,且依赖于任一待执行任务的其它待执行任务称为所述任一待执行任务的下游任务;若判断获知任一待执行任务满足预设的执行条件,则获得所述待执行任务对应的任务结果;根据所述待执行任务的任务ID获得对应的校验规则,并根据所述校验规则对所述任务结果进行校验;若校验通过,则将所述待执行任务的任务状态标记为成功状态;其中,所述成功状态用于判断所述待执行任务的下游任务是否满足预设的执行条件。
【技术特征摘要】
1.一种数据仓库的调度方法,其特征在于,包括:获取当前调度周期内所有待执行任务,并根据相互间的依赖关系,组合成依赖关系表;其中,每个待执行任务至少包括任务ID和任务状态,且依赖于任一待执行任务的其它待执行任务称为所述任一待执行任务的下游任务;若判断获知任一待执行任务满足预设的执行条件,则获得所述待执行任务对应的任务结果;根据所述待执行任务的任务ID获得对应的校验规则,并根据所述校验规则对所述任务结果进行校验;若校验通过,则将所述待执行任务的任务状态标记为成功状态;其中,所述成功状态用于判断所述待执行任务的下游任务是否满足预设的执行条件。2.根据权利要求1所述的方法,其特征在于,所述执行条件为所述待执行任务无所述前置任务或者所有前置任务的任务状态均变为成功状态;其中,所述前置任务为所述依赖关系表中所述待执行任务依赖的其它待执行任务。3.根据权利要求1所述的方法,其特征在于,所述根据所述待执行任务的任务ID获得对应的校验规则,并根据所述校验规则对所述任务结果进行校验;具体为:若所述待执行任务中包括校验标记,则根据所述待执行任务的任务ID获得对应的校验规则,并根据所述校验规则对所述任务结果进行校验。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:若校验失败,且与所述待执行任务对应的失败数量达到预设失败阈值,则将所述待执行任务的任务状态标记为校验失败状态。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:若无法获得所述待执行任务的任务结果,且与所述待执行任务相对应的执行次数达到预设的执行阈值,则将所述待执行任务的任务状态标记为执行失败状态。6.根据权利要求1所述的方法,其特征在于,所述若判断获知任一待执行任务满足预设的执行条件,则获得所述待执行任务对应的任务结果;具体为:若判断获知任一待执行任务满足预设的执行条件,则将所述待执行任务存入待处理资源池;在所述待处理资源池中依据存入的时间先后顺序提取所述待执行任务进行处理,以获取所述待执行任务的任务结果。7.根据权利要求1所述的方法,其特征在于,所述获取当前调度周期内所有待执行任务,并根据相互...
【专利技术属性】
技术研发人员:崔金辉,
申请(专利权)人:链家网北京科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。