CN104462243B - 一种结合数据校验的etl调度系统及方法 - Google Patents

一种结合数据校验的etl调度系统及方法 Download PDF

Info

Publication number
CN104462243B
CN104462243B CN201410659768.XA CN201410659768A CN104462243B CN 104462243 B CN104462243 B CN 104462243B CN 201410659768 A CN201410659768 A CN 201410659768A CN 104462243 B CN104462243 B CN 104462243B
Authority
CN
China
Prior art keywords
etl
data
verification
job
etl job
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410659768.XA
Other languages
English (en)
Other versions
CN104462243A (zh
Inventor
陈品
栾晓宇
陈德莉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Tobacco Group Co Ltd
Original Assignee
Shanghai Tobacco Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Tobacco Group Co Ltd filed Critical Shanghai Tobacco Group Co Ltd
Priority to CN201410659768.XA priority Critical patent/CN104462243B/zh
Publication of CN104462243A publication Critical patent/CN104462243A/zh
Application granted granted Critical
Publication of CN104462243B publication Critical patent/CN104462243B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种结合数据校验的ETL调度系统及方法,调度并执行ETL JOB;获取所述ETL JOB预先关联的校验数据以供加载;每执行一个ETL JOB前,分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验,进而判断是否执行与所述ETL JOB有依赖关系的ETL JOB,从而能够更加有效地加载数据,不仅节约了宝贵的服务器资源,同时大大提高了ETL调度效率。

Description

一种结合数据校验的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 JOB所依赖ETLJOB加载的校验数据的校验结果是否成功,来据以执行或不执行所述当前ETLJOB。
可选的,所述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 JOB,所述ETL JOB加载预先关联的校验数据;每执行一个当前ETLJOB前,所述数据校验装置判断所述当前ETL JOB所依赖ETL JOB的执行结果是否成功且判断所述当前ETL JOB所依赖ETLJOB加载的校验数据的校验结果是否成功,来据以执行或不执行所述当前ETLJOB。
如上所述,本发明提供一种结合数据校验的ETL调度系统及方法,调度并执行ETLJOB;获取所述ETL JOB预先关联的校验数据以供加载;每执行一个ETL JOB前,分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验,进而判断是否执行与所述ETL JOB有依赖关系的ETL JOB,从而能够更加有效地加载数据,不仅节约了宝贵的服务器资源,同时大大提高了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 调度处理单元
112 ETL JOB管理模块
1121 管理配置单元
1122 管理执行单元
113 数据校验消息模块
12 数据校验装置
121 数据接口模块
122 数据校验模块
1221 校验配置单元
1222 校验执行单元
S11~S12,S21~S28,S31~S37 方法步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图1所示,在实施例一中,本发明提供的一种结合数据校验的ETL调度系统1,包括ETL调度装置11及与ETL调度装置11连接的数据校验装置12;其中,ETL调度装置11,用于完成ETL调度系统1中任一ETL JOB的调度及执行,以及与数据校验装置12之间的数据交互;数据校验装置12包括:数据接口模块121,用于实现数据校验装置12与ETL调度装置11间的校验数据交互;与数据接口模块121连接的数据校验模块122,用于执行校验数据的校验;ETL调度系统1中每执行一个ETL JOB前,数据校验装置11分别对ETL JOB的执行结果及ETLJOB中加载的校验数据进行校验,例如通过数据校验装置11设置的校验规则对校验数据进行校验等,校验技术本身较为常见,但是本发明的改进点之一在于将校验技术应用于ETLJOB执行的实时准确性判断中,而非校验技术本身。在一实施例中,所述ETL调度装置11,可以设置在ETL服务器中,也可以独立地设置在另一台服务器中,提供结合数据校验的ETL调度。本发明对ETL调度装置的具体形式不作限定,只要其能实现本发明的目的,都包括在本发明的内容中。
对实施例一进行改进,得到优选地实施例二,如图2和图7所示ETL调度装置11中包括:相连的ETL调度控制模块111、ETL JOB管理模块112、以及数据校验消息模块113。其中,ETL调度控制模块111,是ETL调度装置的核心所在,通过控制ETL JOB与数据校验的交互执行,来控制ETL JOB的调度和执行、以及校验数据的调度(例如请求获取等)及加载;ETL JOB管理模块112,用于管理以及执行ETL JOB;所述数据校验消息模块113,用于与数据接口模块121进行数据交互、调用数据接口模块121、以及接收数据校验模块122的校验结果。
对实施例一进行改进,得到优选地实施例三,如图3所示ETL调度控制模块111包括:相连的调度配置单元1111及调度处理单元1112。其中,调度配置单元1111用于存储第二配置信息;调度处理单元1112通过调用第二配置信息控制ETL JOB的执行及控制ETL JOB中加载的校验数据校验是否执行等,实现ETL JOB和校验数据的交互执行;同时接收ETL JOB的执行结果和校验数据的校验结果,进而控制与ETL JOB有依赖关系的ETL JOB是否执行。具体地,每个ETL JOB执行完成后,都需要对当前执行ETL JOB中加载的数据表进行数据校验,且只有当数据校验结果为“无异常”,与当前执行的ETL JOB有依赖关系的ETL JOB才可以运行;当数据校验结果“存在异常”,相关依赖的ETL JOB将不会运行。
对实施例三进行改进,得到优选地实施例四,当ETL JOB的执行结果为成功,即“无异常”,则执行ETL JOB中加载的校验数据的校验,否则不执行校验数据的校验;当校验数据校验完成,则继续执行与ETL JOB有依赖关系的ETL JOB。
对实施例四进行改进,得到优选地实施例五,所述第二配置信息包括:ETL JOB的名称,ETL JOB之间的依赖关系,ETL JOB中校验数据的加载周期,以及ETL JOB数据校验选项开关。
例如,应用于上述一个完整实施例,本发明中第二配置信息,即ETL JOB加载的数据表如表1所示:
表1:
其中,数据校验开关表示当前ETL JOB加载完成后,是否对加载的数据执行数据校验;ETL JOB依赖列表表示与当前ETL JOB有依赖关系的ETL JOB;数据期数表示ETL JOB加载多少期的数据。进一步地,表1中ETL JOB依赖关系中可以得到ETL JOB的依赖图,如图4所示。
在实际应用中,首先,ETL调度控制模块111根据第二配置信息中ETL JOB的依赖关系将每个ETL JOB根据等级进行分类,如,以表1中第二配置信息为例,ETL JOB可以分为四层,其中,第一层包括JOB_001和JOB_002;第二层包括JOB_003;第三层包括JOB_004、JOB_005以及JOB_006;第四层包括JOB_007和JOB_008。ETL调度控制模块111根据ETL JOB所属的层级,逐个获取ETL JOB,其中,无依赖关系的ETL JOB为最上层,自上而下获取。
对实施例二进行改进,得到优选地实施例六,如图5所示ETL JOB管理模块112包括:相连的管理配置单元1121及管理执行单元1122;管理配置单元1121用于存储ETL JOB的第三配置信息;管理执行单元1122通过调用第三配置信息,控制ETL JOB的执行。
对实施例六进行改进,得到优选地实施例七,第三配置信息包括:ETL JOB的名称,ETL JOB报错重试次数,以及ETL JOB加载的数据列表。
例如,应用于上述一个完整实施例,本发明中第三配置信息,如表2所示:
表2:
ETL JOB名称 加载数据表名 报错重试次数
JOB_001 T_001 2
JOB_002 T_002 2
JOB_003 T_003 2
JOB_004 T_004 2
JOB_005 T_005 2
JOB_006 T_006 2
JOB_007 T_007 2
JOB_008 T_008、T_009 2
其中,表中的报错次数表示当ETL JOB报错后,重试启动运行的次数;加载数据表名即为ETL JOB加载的数据表,在本发明中,每个ETL JOB加载至少一个数据表,每个数据表根据数据表名的先后顺序进行加载。
具体地,ETL JOB管理模块中的管理执行单元执行ETL JOB之后,若ETL JOB报错,则管理执行单元1122根据上述第三配置信息中设定的报错重试次数,重复执行ETL JOB,直至ETL JOB执行成功或者重试次数结束、执行失败,随后将执行结果返回至ETL调度装置11中的ETL调度控制模块111。
对实施例二进行改进,得到优选地实施例八,ETL调度装置11中的数据校验消息模块113,接收到ETL调度控制模块11中执行ETL JOB的校验数据之后,在第三配置信息中获取ETL JOB加载的数据表,以数据表名为输入参数调用数据校验装置12的数据接口模块121执行数据校验,接收校验结果,且将校验结果返回至ETL调度控制模块111。
对实施例一进行改进,得到优选地实施例九,ETL调度系统1中包括至少一个数据校验装置12,也就是说,可为一个或多个皆可,本发明中,使用数据校验装置12实现ETL JOB与数据校验的交互执行,当ETL调用系统中包括多个数据校验装置12时,多个数据校验装置12同时对数据进行校验,大大较快了数据校校验的速率,提高整个ETL调度系统1的利用率。特别地,如图7所示,本发明中的数据校验装置12中包括至少一个数据接口模块121,多个数据接口模块121的设置使得数据校验装置12能够更加快速的接收ETL调度装置11发送的校验数据进行校验,提高整个系统的效率。
对实施例一进行改进,得到优选地实施例十,如图6所示,数据校验模块122包括:相连的校验配置单元1221及校验执行单元1222。其中,校验配置单元1221用于存储校验数据的第一配置信息;校验执行单元1222通过调用第一配置信息,执行校验数据的校验。
对实施例十进行改进,得到优选地实施例十一,第一配置信息包括:校验数据列表、校验规则列表、校验数据列表与校验规则列表之间的关系、以及校验数据期数。进一步地,第一配置信息中还可包括校验数据进行校验的校验字段。
例如,应用于上述一个完整实施例,本发明中第一配置信息中的校验规则列表如表3所示:
表3:
其中,校验规则表示需要校验的数据的内容,其包括:
时效性检验,用于检查加载当前ETL JOB的源数据是否到达,若未到达,则数据加载没有任何意义,则返回结果为“存在异常”,反之为“无异常”;
记录条数校验,用于检查每一期都有相同记录条数的数据,是否出现记录条数与之前不同的数据,若出现,则结果为“存在异常”,反之,结果为“无异常”,例如:某个数据表之前每一期加载的数据记录行数都是固定的1000行,当期加载到这个数据表的记录条数为998行,与之前相比缺少两行数据,可能存在数据丢失问题,则这种情况视为“存在异常”。
代码一致性校验,用于校验的ETL JOB中执行的数据表中的数据代码在代码表中有无出现不存在的情况,若存在,则结果为“存在异常”;反之,结果为“无异常”。例如,在性别代码表中记录了性别的代码,1表示男、2表示女、3表示为其他,在某个数据表中的性别代码字段,出现一行数据性别代码为4,这个代码值不在性别代码表中存在,这种情况视为”存在异常”。
区间型原则性校验,用于检查数据值的大小是否超出特定范围(设定一个最大值和一个最小值构成的一个特定范围),若超出范围,则结果为”存在异常”,反之,结果为”无异常”;在本发明中,上述的特定范围根据当前ETL JOB中执行的数据表进行设定,一般设定一个最大值与一个最小值,待检查的数据在特定范围内视为“无异常”。
同表内逻辑关系校验,用于检查数据表中存在逻辑关系的数据,如A列的值应该等于B列加C列的值,若按逻辑计算的值与数据值不一致,则结果为“存在异常”,反之,结果为“无异常”;
数据源追溯校验,用于检查数据表中的数据值是否与数据源数据计算结果一致,若不一致,则结果为“存在异常”,反之,结果为“无异常”。
规则输入参数表示的是校验数据需要进行校验时输入的参数列表。
数据校验装置返回的数据校验的结果包括,“无异常”和“存在异常”,其中,“无异常”表示数据校验过程中没有出现异常数据,即通过了校验,“存在异常”则表示数据校验过程中出现了异常数据,没有通过校验。
例如,进一步地,应用于上述一个完整实施例,本发明中第一配置信息的配置列表如表4所示:
表4:
其中,校验字段表示表示校验规则校验的字段数据;校验规则编码对应于表3中的校验规则编码,即校验数据的校验规则;输入条件校验规则的校验条件,执行对数据的校验,并且返回数据校验结果,校验结果为“无异常”或者“存在异常”。
具体地,在本发明中,数据校验模块122执行如表4中的校验过程;数据接口模块121用于实现ETL调度装置11与数据校验装置12之间的信息交互。例如:数据校验模块122提供一个输入参数为数据表名的校验接口请求,则当数据接口模块121接收到请求后,通过输入的参数,如数据表名获取对应的校验规则,执行校验数据的校验操作,同时将校验结果返回至数据校验消息模块113。特别地,只要当前ETL JOB中加载的校验表中存在一个校验结果出现“存在异常”,则数据表的校验结果为“存在异常”,否则为“无异常”。
如图8所示,本发明还提供了一种结合数据校验的ETL调度方法,包括:
步骤S11:调度并执行ETL JOB,所述ETL JOB加载预先关联的校验数据;
步骤S12:每执行一个ETL JOB前,分别对所述ETL JOB的执行结果及所述ETL JOB中加载的所述校验数据进行校验。
如图9所示,在一实施例中,本发明还提供了结合数据校验的ETL调度方法的又一实施例,应用于上述结合数据校验的ETL调度系统,包括以下步骤:
步骤S21:获取ETL JOB;
步骤S22:判断ETL JOB是否有依赖关系,若有依赖关系,则跳转至步骤S23,若没有依赖关系,则跳转至步骤S25;
步骤S23:判断当前ETL JOB所依赖的ETL JOB的执行结果及所依赖的ETL JOB加载的校验数据的校验结果;若执行成功且无异常数据,则进入步骤S25,否则进入步骤S24;
步骤S24:不执行当前ETL JOB,且标记该ETL JOB为“失败”,同时获取下一个ETLJOB,返回步骤S21;
步骤S25:ETL JOB管理模块执行当前ETL JOB,并将执行结果返回至ETL调度控制模块;
步骤S26:根据执行结果,判断当前ETL JOB是否执行成功;
步骤S27:若ETL JOB执行失败,不执行当前ETLJOB,标记该ETL JOB为“失败”,获取下一个ETL JOB,返回步骤S21;
步骤S28:执行ETL JOB中加载的校验数据的校验,若校验通过,标记为“无异常”,否则标记为“存在异常”,完成数据校验;
步骤S29:判断是否还存在未获取的ETL JOB,若是,则进入步骤S21;若否
具体地,在步骤S21中,ETL JOB的获取顺序根据依赖关系来排列,其中,无依赖关系的ETL JOB为最上层,自上而下获取。如,以表1中第二配置信息为例,ETL JOB可以分为四层,其中,第一层包括JOB_001和JOB_002;第二层包括JOB_003;第三层包括JOB_004、JOB_005以及JOB_006;第四层包括JOB_007和JOB_008。ETL调度控制模块根据ETL JOB所属的层级,逐个获取ETL JOB。
在步骤S22中,ETL调度控制模块获取了ETL JOB之后,判断ETL JOB是否具有依赖,若无依赖,则执行ETL JOB并返回执行结果;若有依赖关系,则对ETL JOB的执行结果以及其中加载的数据进行分别校验。同样,以第二配置信息为例,从表1中可以得到,JOB_001、JOB_002不存在依赖关系,进入步骤S5;JOB_003,JOB_004、JOB_005、JOB_006,JOB_007、JOB_008都存在依赖关系,进入步骤S3。
在步骤S27中,数据校验消息模块通过调用数据校验装置中的数据接口模块,来完成校验数据的校验工作。
如图10所示,本发明还提供了一种ETL调度装置与数据校验装置进行数据交互的方法,包括以下步骤:
步骤S31:ETL调度控制模块发送信号至ETL JOB管理模块,执行当前ETL JOB;
步骤S32:ETL JOB管理模块返回执行结果,ETL调度控制模块根据执行结果以及ETL JOB的依赖关系,判断ETL调度系统的执行;
步骤S33:调度控制模块发送信号至数据校验消息模块执行数据校验;
步骤S34:数据校验消息模块调用数据校验装置中的数据接口模块;
步骤S35:数据接口模块发送信号至数据校验模块,执行校验数据的校验;
步骤S36:数据校验模块返回校验结果,数据接口模块校验结果,形成校验结果;
步骤S37:数据校验消息模块接收校验结果,ETL调度控制模块根据校验结果处理与当前执行的ETL JOB有依赖关系的ETL JOB,完成调度。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种结合数据校验的ETL调度系统,其特征在于,包括:
ETL调度装置及与所述ETL调度装置连接的数据校验装置;
所述ETL调度装置,用于完成所述ETL调度系统中任一ETL JOB的调度及执行,以及与所述数据校验装置之间的数据交互;
所述数据校验装置包括:
数据接口模块,用于所述数据校验装置与所述ETL调度装置间的校验数据交互,其中,所述校验数据供预先关联的ETL JOB加载;
与所述数据接口模块连接的数据校验模块,用于执行所述校验数据的校验;
其中,所述ETL调度系统中每执行一个当前ETL JOB前,所述数据校验装置判断所述当前ETL JOB所依赖ETL JOB的执行结果是否成功且判断所述当前ETL JOB所依赖ETLJOB加载的校验数据的校验结果是否成功,若所述执行结果成功且校验结果成功则执行当前ETLJOB,否则不执行当前ETLJOB。
2.如权利要求1所述结合数据校验的ETL调度系统,其特征在于,所述ETL调度装置包括:相连的ETL调度控制模块、ETL JOB管理模块、以及数据校验消息模块;
所述ETL JOB管理模块,用于管理以及执行所述ETL JOB;
所述ETL调度控制模块,用于控制ETL JOB的调度和执行、以及控制校验数据的校验执行;
所述数据校验消息模块,用于与所述数据接口模块进行数据交互、调用所述数据接口模块、以及接收数据校验模块的校验结果。
3.如权利要求1所述结合数据校验的ETL调度系统,其特征在于,所述数据校验模块包括:相连的校验配置单元及校验执行单元;
所述校验配置单元,用于存储第一配置信息;
所述校验执行单元,用于根据所述第一配置信息以执行所述校验数据的校验。
4.如权利要求3所述结合数据校验的ETL调度系统,其特征在于,所述第一配置信息包括:校验数据列表、校验规则列表、所述校验数据列表与所述校验规则列表之间的关系、以及校验数据期数。
5.如权利要求2所述结合数据校验的ETL调度系统,其特征在于,所述ETL调度控制模块包括:相连的调度配置单元及调度处理单元;
所述调度配置单元,用于存储第二配置信息;
所述调度处理单元,用于根据所述第二配置信息来控制ETL JOB的执行及其加载校验数据是否执行校验,并接收ETL JOB的执行结果和所述校验数据的校验结果,据以判断是否执行与所述ETL JOB有依赖关系的ETL JOB。
6.如权利要求5所述结合数据校验的ETL调度系统,其特征在于,所述第二配置信息包括:ETL JOB的名称、ETL JOB之间的依赖关系、ETL JOB中所述校验数据的加载周期,以及ETL JOB数据校验选项开关。
7.如权利要求6所述结合数据校验的ETL调度系统,其特征在于,
当所述ETL JOB的执行结果为成功,则执行所述ETL JOB中加载的所述校验数据的校验;若ETLJOB执行结果失败,则不执行所述校验数据的校验;
当所述校验数据校验完成,则继续执行与所述ETL JOB有依赖关系的ETL JOB。
8.如权利要求2所述结合数据校验的ETL调度系统,其特征在于,所述ETL JOB管理模块包括:相连的管理配置单元及管理执行单元;
所述管理配置单元,用于存储第三配置信息;
所述管理执行单元,用于根据所述第三配置信息以执行ETL JOB。
9.如权利要求8所述结合数据校验的ETL调度系统,其特征在于,所述第三配置信息包括:ETL JOB的名称、ETL JOB报错重试次数、以及ETL JOB加载的数据表。
10.一种结合数据校验的ETL调度方法,其特征在于,包括:
调度并执行ETL JOB,所述ETL JOB加载预先关联的校验数据;
每执行一个当前ETL JOB前,通过数据校验装置判断所述当前ETL JOB所依赖ETL JOB的执行结果是否成功且判断所述当前ETL JOB所依赖ETLJOB加载的校验数据的校验结果是否成功,若所述执行结果成功且校验结果成功则执行当前ETLJOB,否则不执行当前ETLJOB。
CN201410659768.XA 2014-11-19 2014-11-19 一种结合数据校验的etl调度系统及方法 Active CN104462243B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410659768.XA CN104462243B (zh) 2014-11-19 2014-11-19 一种结合数据校验的etl调度系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410659768.XA CN104462243B (zh) 2014-11-19 2014-11-19 一种结合数据校验的etl调度系统及方法

Publications (2)

Publication Number Publication Date
CN104462243A CN104462243A (zh) 2015-03-25
CN104462243B true CN104462243B (zh) 2018-09-07

Family

ID=52908279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410659768.XA Active CN104462243B (zh) 2014-11-19 2014-11-19 一种结合数据校验的etl调度系统及方法

Country Status (1)

Country Link
CN (1) CN104462243B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104778236A (zh) * 2015-04-02 2015-07-15 上海烟草集团有限责任公司 一种基于元数据的etl实现方法及系统
CN106777180B (zh) * 2016-12-22 2020-09-01 北京京东金融科技控股有限公司 高性能分布式数据转换的方法、装置及系统
CN108491254A (zh) * 2018-02-07 2018-09-04 链家网(北京)科技有限公司 一种数据仓库的调度方法及装置
CN108875056B (zh) * 2018-06-28 2021-08-13 中国建设银行股份有限公司 数据检核方法、装置、电子设备及可读存储介质
CN113050949A (zh) * 2021-03-23 2021-06-29 上海万向区块链股份公司 基于java的防止父子依赖job执行后数据错乱的方法及系统
CN116795504A (zh) * 2023-01-10 2023-09-22 联通沃音乐文化有限公司 基于深度学习算法的etl调度方法、装置、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058615B2 (en) * 2003-04-24 2006-06-06 International Business Machines Corporation Scheduling for data warehouse ETL processing and data mining execution
CN101567013A (zh) * 2009-06-02 2009-10-28 阿里巴巴集团控股有限公司 一种etl调度的实现方法及装置
CN102541959A (zh) * 2010-12-31 2012-07-04 中国移动通信集团安徽有限公司 Etl调度方法、装置及系统
CN103034554A (zh) * 2012-12-30 2013-04-10 焦点科技股份有限公司 一种纠错重启以及自动判断启动的etl调度系统及方法
CN103246574A (zh) * 2012-02-10 2013-08-14 阿里巴巴集团控股有限公司 数据准确性的校验方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058615B2 (en) * 2003-04-24 2006-06-06 International Business Machines Corporation Scheduling for data warehouse ETL processing and data mining execution
CN101567013A (zh) * 2009-06-02 2009-10-28 阿里巴巴集团控股有限公司 一种etl调度的实现方法及装置
CN102541959A (zh) * 2010-12-31 2012-07-04 中国移动通信集团安徽有限公司 Etl调度方法、装置及系统
CN103246574A (zh) * 2012-02-10 2013-08-14 阿里巴巴集团控股有限公司 数据准确性的校验方法及装置
CN103034554A (zh) * 2012-12-30 2013-04-10 焦点科技股份有限公司 一种纠错重启以及自动判断启动的etl调度系统及方法

Also Published As

Publication number Publication date
CN104462243A (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
CN104462243B (zh) 一种结合数据校验的etl调度系统及方法
CN109412829B (zh) 一种资源配置的预测方法及设备
CN112492003B (zh) 一种基于业务编排器的云网融合业务处理方法及装置
CN103197640B (zh) 生产工艺智能管控系统和方法
WO2019006654A1 (zh) 金融自助设备维修派单生成方法、手持终端及电子设备
CN107450524A (zh) 预测工业设备故障的方法、装置及计算机可读存储介质
CN102799519A (zh) 一种集群文件系统自动化测试方法
CN103870334A (zh) 一种大规模漏洞扫描的任务分配方法及装置
CN108304286A (zh) 一种对转码服务器并发性能进行自动化测试的系统及方法
CN105653401A (zh) 应用系统灾备、运维、监控和应急启停调度方法及装置
US10539934B2 (en) Outage and switch management for a power grid system
CN110350655A (zh) 一种配网操作票程序化下令系统
CN107040406A (zh) 一种端云协同计算系统及其容错方法
CN104767756A (zh) 设备信息处理方法、客户端装置和服务端装置
US12062256B2 (en) Method and device for remotely diagnosing vehicle faults, vehicle, and computer storage medium
CN109814917A (zh) 微服务发布方法、装置、计算机设备和存储介质
CN109760985A (zh) 物料循环盘点的方法和装置、电子设备、可读存储介质
CN107864187A (zh) 终端设备联机任务执行方法及服务器
CN107783851A (zh) 一种服务器集群稳态可用度马氏建模方法
CN109743202A (zh) 数据的管理方法、装置、设备及可读存储介质
CN102111508A (zh) 一种故障处理方法、系统及故障调度设备
CN109359034A (zh) 一种业务系统测试方法、计算机可读存储介质及终端设备
CN107038180A (zh) 投保单信息更新方法及管理服务器
Ng et al. Analysis of shop floor performance through discrete event simulation: A case study
CN107316494A (zh) 一种停车场异常的处理方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant