一种结合数据校验的ETL调度系统及方法技术方案

技术编号:11200964 阅读:161 留言:0更新日期:2015-03-26 08:32
本发明专利技术提供一种结合数据校验的ETL调度系统及方法,调度并执行ETL JOB;获取所述ETL JOB预先关联的校验数据以供加载;每执行一个ETL JOB前,分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验,进而判断是否执行与所述ETL JOB有依赖关系的ETL JOB,从而能够更加有效地加载数据,不仅节约了宝贵的服务器资源,同时大大提高了ETL调度效率。

【技术实现步骤摘要】
【专利摘要】本专利技术提供一种结合数据校验的ETL调度系统及方法,调度并执行ETL JOB;获取所述ETL JOB预先关联的校验数据以供加载;每执行一个ETL JOB前,分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验,进而判断是否执行与所述ETL JOB有依赖关系的ETL JOB,从而能够更加有效地加载数据,不仅节约了宝贵的服务器资源,同时大大提高了ETL调度效率。【专利说明】一种结合数据校验的ETL调度系统及方法
本专利技术涉及数据仓库
,特别是涉及一种结合数据校验的ETL调度系统及 方法。
技术介绍
传统的ETL (Extract-Transform-Load,数据仓库技术)指在构建数据仓库过程中 对数据源中数据的抽取(Extract),经过数据转换(Transform)后加载(Load)到数据仓库 的过程。一般情况下,ETL负责系统运行程序的调度控制,但是在调度过程中也不会涉及到 数据校验。 当然,也有一些ETL调度过程涉及到数据校验。通常,在ETL调度系统周围部署数 据校验系统来实现,且当所有ETL调度系统中所有的ETL JOB (ETL JOB)运行调度完成后, 再集中调度数据校验程序,随后获取数据校验结果,生成数据校验报告。 但是在实践过程中,上述调度方式存在很多缺陷,如,在ETL调度过程中,若加载 的数据有异常,现有的ETL调度系统中与前一个执行的ETL JOB有依赖关系的下一个ETL JOB仍会继续执行,导致异常数据继续加载到后续的列表中,这种情况一旦发生,异常数据 影响范围大,随后需要处理多张有问题的列表来解决这个问题;又如,数据源没有到达,在 现有的ETL调度系统中与前一个执行的ETL JOB有依赖关系的下一个ETL JOB同样会继续 执行,但是,这种情况下后续ETL JOB的运行变得完全没有意义,不仅浪费宝贵的服务器资 源,还降低了 ETL调度效率。 从上述情况可知,即使在目前的ETL调度系统中部署了数据校验系统,最终校验 出数据问题也已经为时已晚,错误数据已经遍布整个数据仓库,因而急需一种能够解决上 述问题的ETL调度系统。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种结合数据校验的ETL 调度系统及方法,解决上述现有技术中数据仓库建立过程中因校验不及时而造成错误数据 较多的问题。 为实现上述目标及其他相关目标,本专利技术提供一种结合数据校验的ETL调度系 统,包括:ETL调度装置及与所述ETL调度装置连接的数据校验装置;所述ETL调度装置,用 于完成所述ETL调度系统中任一 ETL JOB的调度及执行,以及与所述数据校验装置之间的 数据交互;所述数据校验装置包括:数据接口模块,用于所述数据校验装置与所述ETL调度 装置间的校验数据交互,其中,所述校验数据供预先关联的ETL JOB加载;与所述数据接口 模块连接的数据校验模块,用于执行所述校验数据的校验;其中,所述ETL调度系统中每执 行一个ETL JOB前,所述数据校验装置分别对所述ETL JOB的执行结果及所述ETL JOB中 加载的所述校验数据进行校验。 可选的,所述ETL调度装置包括:相连的ETL调度控制模块、ETL JOB管理模块、以 及数据校验消息模块;所述ETL JOB管理模块,用于管理以及执行所述ETL JOB;所述ETL 调度控制模块,用于控制ETL JOB的调度和执行、以及控制校验数据的校验执行;所述数据 校验消息模块,用于与所述数据接口模块进行数据交互、调用所述数据接口模块、以及接收 数据校验模块的校验结果。 可选的,所述数据校验模块包括:相连的校验配置单元及校验执行单元;所述校 验配置单元,用于存储第一配置信息;所述校验执行单元,用于根据所述第一配置信息以执 行所述校验数据的校验。 进一步可选的,所述第一配置信息包括:校验数据列表、校验规则列表、所述校验 数据列表与所述校验规则列表之间的关系、以及校验数据期数。 可选的,所述ETL调度控制模块包括:相连的调度配置单元及调度处理单元;所述 调度配置单元,用于存储第二配置信息;所述调度处理单元,用于根据所述第二配置信息来 控制ETL JOB的执行及其加载校验数据是否执行校验,并接收ETL JOB的执行结果和所述 校验数据的校验结果,据以判断是否执行与所述ETL JOB有依赖关系的ETL JOB。 进一步可选的,所述第二配置信息包括:ETL JOB的名称、ETL JOB之间的依赖关 系、ETL JOB中所述校验数据的加载周期,以及ETL JOB数据校验选项开关。 进一步可选的,当所述ETL JOB的执行结果为成功,则执行所述ETL JOB中加载的 所述校验数据的校验;若ETLJOB执行结果失败,则不执行所述校验数据的校验;当所述校 验数据校验完成,则继续执行与所述ETL JOB有依赖关系的ETL JOB。 可选的,所述ETL JOB管理模块包括:相连的管理配置单元及管理执行单元;所述 管理配置单元,用于存储第三配置信息;所述管理执行单元,用于根据所述第三配置信息以 执行 ETL JOB。 进一步可选的,所述第三配置信息包括:ETL JOB的名称、ETL JOB报错重试次数、 以及ETL JOB加载的数据表。 为实现上述目标及其他相关目标,本专利技术提供一种结合数据校验的ETL调度方 法,包括:调度并执行ETL J0B,所述ETL JOB加载预先关联的校验数据;每执行一个ETL JOB前,分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验。 如上所述,本专利技术提供一种结合数据校验的ETL调度系统及方法,调度并执行ETL JOB;获取所述ETL JOB预先关联的校验数据以供加载;每执行一个ETL JOB前,分别对所述 ETLJOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验,进而判断是否执行与 所述ETL JOB有依赖关系的ETL J0B,从而能够更加有效地加载数据,不仅节约了宝贵的服 务器资源,同时大大提高了 ETL调度效率。 【专利附图】【附图说明】 图1为本专利技术一实施例中结合数据校验的ETL调度系统结构示意图; 图2为本专利技术一实施例中ETL调度装置的结构示意图; 图3为本专利技术一实施例中ETL调度控制模块结构示意图; 图4为本专利技术一实施例中表1中得到的ETL JOB依赖关系示意图; 图5为本专利技术一实施例中ETL JOB管理模块结构示意图; 图6为本专利技术一实施例中数据校验模块结构示意图; 图7为本专利技术一实施例中ETL调度系统具体实施的结构示意图; 图8为本专利技术一实施例中结合数据校验的ETL调度方法流程示意图; 图9为本专利技术一实施例中结合数据校验的ETL调度方法的具体实施的流程示意 图; 图10为本专利技术一实施例中结合数据校验的ETL调度系统的调度过程示意图。 元件标号说明 1 结合数据校验的ETL 调度系统 11 ETL调度装置 111 ETL调度控制模块 1111调度配置单元 1112调度处理单本文档来自技高网
...

【技术保护点】
一种结合数据校验的ETL调度系统,其特征在于,包括:ETL调度装置及与所述ETL调度装置连接的数据校验装置;所述ETL调度装置,用于完成所述ETL调度系统中任一ETL JOB的调度及执行,以及与所述数据校验装置之间的数据交互;所述数据校验装置包括:数据接口模块,用于所述数据校验装置与所述ETL调度装置间的校验数据交互,其中,所述校验数据供预先关联的ETL JOB加载;与所述数据接口模块连接的数据校验模块,用于执行所述校验数据的校验;其中,所述ETL调度系统中每执行一个ETL JOB前,所述数据校验装置分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈品栾晓宇陈德莉
申请(专利权)人:上海烟草集团有限责任公司
类型:发明
国别省市:上海;31

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

1