【技术实现步骤摘要】
基于数据的分布式ETL调度的方法和装置
本专利技术涉及计算机
,尤其涉及一种基于数据的分布式ETL调度的方法和装置。
技术介绍
现有的数据分析领域,主流的开源作业调度工具,如Azkaban、Oozie、Kettle(C/S架构)等,ETL(Extract-Transform-Load,用来描述将数据从来源端经过萃取、转置、加载至目的端的过程)过程通常是依靠于源数据作为数据源进行时间、事件型调度,实际生产中的数据种类庞大,中间结果数据更是庞大,如果ETL过程仅仅依靠于源数据作为数据源进行调度,会产生更多的一次性数据且浪费计算资源。
技术实现思路
有鉴于此,本专利技术实施例提供一种基于数据的分布式ETL调度的方法和装置,能够以生产时产生的中间结果数据作为数据源,减少作业依赖复杂度、减少冗余数据的产生且节省计算资源、提高调度效率。为实现上述目的,根据本专利技术的一个方面,提供了基于数据的一种分布式ETL调度的方法,包括:根据当前作业流的作业流配置表,确定当前作业流的数据源表;依据所 ...
【技术保护点】
1.一种基于数据的分布式ETL调度的方法,其特征在于,包括:/n根据当前作业流的作业流配置表,确定当前作业流的数据源表;/n依据所述数据源表查找所有作业流的作业流配置表,确定以所述数据源表作为数据结果表的依赖作业流;/n当所述依赖作业流执行成功时执行所述当前作业流,并将所述当前作业流的执行数据保存至所述当前作业流的数据结果表;/n其中,所述作业流配置表包括以下字段:作业流标识,数据源表的标识,数据结果表的标识。/n
【技术特征摘要】
1.一种基于数据的分布式ETL调度的方法,其特征在于,包括:
根据当前作业流的作业流配置表,确定当前作业流的数据源表;
依据所述数据源表查找所有作业流的作业流配置表,确定以所述数据源表作为数据结果表的依赖作业流;
当所述依赖作业流执行成功时执行所述当前作业流,并将所述当前作业流的执行数据保存至所述当前作业流的数据结果表;
其中,所述作业流配置表包括以下字段:作业流标识,数据源表的标识,数据结果表的标识。
2.如权利要求1所述的方法,其特征在于,所述作业流配置表还包括如下字段:业务日期和作业流状态;
所述方法还包括:判断所述依赖作业流的业务日期和作业流状态是否满足如下条件:所述依赖作业流的业务日期等于所述当前作业流的日期、且所述依赖作业流的作业流状态为用于指示所述依赖作业流执行成功的状态;若是,则判定所述依赖作业流执行成功;以及,
执行所述当前作业流之后,还包括:更新所述当前作业流的作业流配置表中的业务日期和作业流状态。
3.如权利要求1所述的方法,其特征在于,所述作业流配置表还包括如下字段:时间触发、事件触发和作业流触发;
根据当前作业流的作业流配置表,确定当前作业流的数据源表之前,还包括:确认所述当前作业流被触发;其中,当所述当前作业流满足如下任一条件时,判定所述当前作业流被触发:
当前时间满足所述时间触发字段的字段值,所述事件触发字段指示的事件被触发,所述作业流触发字段指示的所述当前作业流的前置作业流执行成功。
4.如权利要求1所述的方法,其特征在于,所述作业流配置表还包括如下字段:数据处理过程描述和数据结果表结构;所述当前作业流是按照如下步骤创建的:
依据用户用于创建所述当前作业流输入的关键词查找所有作业流的作业流配置表,获取与所述关键词关联的关联作业流;
根据所述关联作业流的作业流配置表中的数据处理过程描述和数据结果表结构,从所有所述关联作业流的数据结果表中筛选所述当前作业流的数据源表;
创建所述当前作业流的作业流配置表,将所述当前作业流的数据源表的标识写入所述当前作业流的作业流配置表,以创建所述当前作业流。
5.一种基于数据的分布式ETL调度的装置,其特征在于,包括:
确定数据源表模块,根据当前作业流的作业流配置表,确定当前作业流的数据源表;
确定依赖作业流模块,依据所述数据源表查找所有作业流的作业流配置表,确定以所述数据源表作为数据...
【专利技术属性】
技术研发人员:李威,覃鹏,叶长全,刘增文,吴仰波,
申请(专利权)人:中国建设银行股份有限公司,建信金融科技有限责任公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。