Etl调度方法及装置的制造方法

文档序号:9922029阅读:627来源:国知局
Etl调度方法及装置的制造方法
【技术领域】
[0001] 本发明实施例涉及通信技术,尤其涉及一种抽取转换装载 (Extract-Transform-Load, ETL)调度方法及装置。
【背景技术】
[0002] 随着大数据技术发展,分布式的数据存储系统越来越多,大数据应用一般需要集 成多个不同的数据存储系统来构建不同应用的数据仓库,ETL用来描述将数据从源数据仓 库经过抽取、转换和装载至目的数据仓库的过程。通常ETL装置或称为ETL工具用来负责 系统运行程序的调度控制和资源的分配。
[0003] 通常上述的数据仓库对应的服务器一般采用分布式的部署方式,但是采用的部署 方式不尽相同,目前存在的主要部署方式为:无共享(Shated Nothing)架构和共享磁盘 (Shared Disk)架构,其中无共享架构是指各个数据仓库中对应节点(服务器)拥有独立 的中央处理器(Central Processing Unit, CPU)、内存、磁盘资源,数据按照规则分布在不 同的节点上。共享磁盘架构是指各个数据仓库对应节点拥有独立的CPU、内存,但节点之间 是共享磁盘空间的,数据统一存储。现有技术中,大规模并行处理(Massively Parallel Pr〇CeSSing,MPP)中包括多个数据仓库,由于各个数据仓库对应服务器部署方式不尽相同, 因此,每个阶段会对应一个ETL装置,实现任务的分发和调度。
[0004] 然而,现有技术中存在对离散化的ETL装置管理效率低,维护较为复杂的问题。

【发明内容】

[0005] 本发明提供一种ETL调度方法及装置,从而提高对ETL装置的管理效率,降低维护 复杂度。
[0006] 第一方面,本发明一实施例提供一种ETL调度方法,包括:确定每个阶段的任务执 行规则所对应的第一数据仓库,所述第一数据仓库为所述每个阶段的数据仓库中的源数据 仓库或目的数据仓库;根据所述源数据仓库和所述目的数据仓库之间的逻辑关系和所述第 一数据仓库建立任务复制表,所述任务复制表包括:所述源数据仓库的表项和所述目的数 据仓库的表项;根据第二数据仓库对应服务器采用的分布式方式建立任务分配表,所述第 二数据仓库为所述每个阶段的数据仓库中的源数据仓库或目的数据仓库,所述任务分配表 包括:每个所述第二数据仓库对应服务器所采用的分布式方式;根据所述任务复制表和所 述任务分配表对所述每个阶段的任务进行调度。
[0007] 结合第一方面,在第一方面的第一种可能实施方式中,所述任务复制表还包括:第 一参数和第二参数;所述第一参数用于表示所述第一数据仓库为该阶段的所述源数据仓 库;所述第二参数用于表示所述第一数据仓库为该阶段的所述目的数据仓库。
[0008] 结合第一方面的第一种可能实施方式,在第一方面的第二种可能实施方式中,所 述根据所述源数据仓库和所述目的数据仓库之间的逻辑关系和所述第一数据仓库建立任 务复制表,具体包括:根据所述源数据仓库和所述目的数据仓库之间的逻辑关系确定所述 源数据仓库的表项和所述目的数据仓库的表项;根据所述第一数据仓库确定所述第一参数 和所述第二参数;根据所述源数据仓库的表项、所述目的数据仓库的表项、所述第一参数和 所述第二参数建立所述任务复制表。
[0009] 结合第一方面或第一方面的第一种可能实施方式或第一方面的第二种可能实施 方式,在第一方面的第三种可能实施方式中,还包括:所述分布式方式包括:无共享分布方 式和共享磁盘分布方式。
[0010] 结合第一方面的第三种可能实施方式,在第一方面的第四种可能实施方式中,所 述根据所述任务复制表和所述任务分配表对所述每个阶段的任务进行调度,具体包括:在 每个阶段中的所述源数据仓库和所述目的数据仓库之间按照确定的所述分布式方式调度 所述每个阶段的任务。
[0011] 第二方面,本发明一实施例提供一种ETL调度装置,包括:确定模块,用于确定每 个阶段的任务执行规则所对应的第一数据仓库,所述第一数据仓库为所述每个阶段的数据 仓库中的源数据仓库或目的数据仓库;建立模块,用于根据所述源数据仓库和所述目的数 据仓库之间的逻辑关系和所述第一数据仓库建立任务复制表,所述任务复制表包括:所述 源数据仓库的表项和所述目的数据仓库的表项;所述建立模块,还用于根据第二数据仓库 对应服务器采用的分布式方式建立任务分配表,所述第二数据仓库为所述每个阶段的数据 仓库中的源数据仓库或目的数据仓库,所述任务分配表包括:每个所述第二数据仓库对应 服务器所采用的分布式方式;调度模块,用于根据所述任务复制表和所述任务分配表对所 述每个阶段的任务进行调度。
[0012] 结合第二方面,在第二方面的第一种可能实施方式中,所述任务复制表还包括:第 一参数和第二参数;所述第一参数用于表示所述第一数据仓库为该阶段的所述源数据仓 库;所述第二参数用于表示所述第一数据仓库为该阶段的所述目的数据仓库。
[0013] 结合第二方面的第一种可能实施方式,在第二方面的第二种可能实施方式中,所 述建立模块,具体用于:根据所述源数据仓库和所述目的数据仓库之间的逻辑关系确定所 述源数据仓库的表项和所述目的数据仓库的表项;根据所述第一数据仓库确定所述第一参 数和所述第二参数;根据所述源数据仓库的表项、所述目的数据仓库的表项、所述第一参数 和所述第二参数建立所述任务复制表。
[0014] 结合第二方面或第二方面的第一种可能实施方式或第二方面的第二种可能实施 方式,在第二方面的第三种可能实施方式中,还包括:所述分布式方式包括:无共享分布方 式和共享磁盘分布方式。
[0015] 结合第二方面的第三种可能实施方式,在第二方面的第四种可能实施方式中,所 述调度模块,具体用于:在每个阶段中的所述源数据仓库和所述目的数据仓库之间按照确 定的所述分布式方式调度所述每个阶段的任务。
[0016] 本发明实施例提供了一种ETL调度方法及装置,其中该方法包括:确定每个阶段 的任务执行规则所对应的第一数据仓库,所述第一数据仓库为所述每个阶段的数据仓库中 的源数据仓库或目的数据仓库;根据所述源数据仓库和所述目的数据仓库之间的逻辑关系 和所述第一数据仓库建立任务复制表,所述任务复制表包括:所述源数据仓库的表项和所 述目的数据仓库的表项;根据所述第二数据仓库对应服务器采用的分布式方式建立任务分 配表,所述第二数据仓库为所述每个阶段的数据仓库中的源数据仓库或目的数据仓库,所 述任务分配表包括:每个所述第二数据仓库对应服务器所采用的分布式方式;根据所述任 务复制表和所述任务分配表对所述每个阶段的任务进行调度。由于在系统中的各个阶段中 不需要多个独立的ETL装置,只需一个ETL装置,通过建立任务复制表和任务分配表调度各 阶段的任务即可,从而提高系统中对ETL装置的管理效率,降低维护复杂度。
【附图说明】
[0017] 图1为本发明一实施例提供的一种ETL调度方法的流程图;
[0018] 图2为本发明一实施例提供的MPP系统的结构示意图;
[0019] 图3为本发明一实施例提供的一种ETL调度装置的结构示意图。
【具体实施方式】
[0020] 为使本发明实施例的目的、技术方案和优点更加清
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1