[发明专利]一种ETL调度的实现方法及装置有效

专利信息
申请号: 200910203276.9 申请日: 2009-06-02
公开(公告)号: CN101567013A 公开(公告)日: 2009-10-28
发明(设计)人: 蒋杰;陈荣松;蒋萃林 申请(专利权)人: 阿里巴巴集团控股有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京同达信恒知识产权代理有限公司 代理人: 郭润湘
地址: 英属开曼群*** 国省代码: 开曼群岛;KY
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 etl 调度 实现 方法 装置
【说明书】:

技术领域

本申请涉及计算机领域,特别涉及一种流程控制方法及装置。

背景技术

数据仓库(Data Warehouse,DW)是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。数据仓库是一个独立的数据环境,而数据抽取、转换和加载(Extraction-Transformation-Loading,ETL)是构建数据仓库的重要一环。

ETL用于将分布的、异构数据源中的数据(例如,关系数据、平面数据文件等)抽取到临时中间层后进行清洗、转换和集成,最后按照预先定义好的数据仓库模型,将数据加载到数据仓库中,使构建的数据仓库成为联机分析处理和数据挖掘的基础。在技术上,ETL主要涉及到关联、转换、增量、调度和监控等几个方面。通常,数据仓库中的数据不要求与联机事务处理系统中的数据实时同步,因此,ETL可以定时进行,但多个ETL的操作时间、顺序和成败对数据仓库中数据的有效性有着至关重要的影响,从而直接影响到联机分析处理结果和数据挖掘结果的质量。

目前,构建数据仓库时所执行的ETL大多使用:基于Java程序语言的事务管理系统(Java Business Process Management,JBPM)引擎实现程序代码的流程化控制,所谓JBPM引擎,是一种基于J2EE的轻量级工作流管理系统,它作为企业级的流程引擎,在外部还拓展了如身份组件、兼容性数据包、任务管理等模块。JBPM引擎在运行时,以令牌(即认证权限,如用户名、密码等)作为媒介在节点之间依次传递,令牌到达哪个节点,哪个节点所映射的程序就开始执行,程序执行完成后再将令牌向下传递。令牌在传递过程中可以被克隆成两份分别传送给两个具有独立任务程序的节点,这两个节点即可并行执行相应的任务程序;如果有一节点执行的任务程序依赖于上述两个任务程序的执行结果,则该节点需要收集到用于分别表示上述两个任务程序执行完毕的两个令牌后,才能开始执行相应的任务程序。

JBPM引擎并不是针对ETL的流程调度所设计的流程引擎,因此,使用JBPM引擎对ETL进行流程调度管理,会降低ETL的执行效率,例如:

现有的JBPM引擎是一个开放式的流程引擎,其不仅仅应用于ETL领域,也应用于OA-办公自动化、CRM-客户关系管理等系统,因此,JBPM引擎中嵌套了许多与ETL的流程调度管理无关的功能,如:swimlane-泳道、安全认证管理、消息服务等功能。并且JBPM引擎内核采用令牌式依次传递方式,不能适应‘任务回退’、‘任务跳跃前进’等ETL流程调度中的实际应用需求。

另一方面,JBPM引擎所采用的流程描述语言(JPDL)不能描述父子流程间的依赖关系,只能靠程序员对JAVA程序中的节点类进行扩展来实现相似的功能,这样,在任务程序执行过程中便需要反复通过扩展类来创建子流程,从而严重降低了父流程的执行效率。同时在JBPM流程设计器中也不提供整体ETL调度流程的可视化管理,从而增加了流程设计和后期维护的技术难度。

本申请实施例中,在执行ETL调度包含的若干任务流程时,针对任意一个任务流程,根据预设的配置文件确定任务流程内包含的各子任务流程的触发方式、执行顺序和相互之间的依赖关系;按照设定的触发方式依次触发相应的子任务流程,并且按照设定顺序执行已被触发的子任务流程,其中,在确定至少一个子任务流程已执行完毕时,根据所述子任务流程之间的依赖关系,开始执行依赖所述至少一个子任务流程并且已被触发的其他子任务流程。这样,便使各任务流程内的子任务流程之间的业务逻辑清晰、业务功能明确,从而有效提升了ETL调度流程的执行效率。

发明内容

本申请实施例提供一种ETL的流程调度方法及装置,用于提高ETL调度流程的执行效率。

本申请实施例提供的具体技术方案如下:

一种ETL调度的实现方法,ETL调度包含若干任务流程,每一任务流程包含若干子任务流程,其中,针对一个任务流程,包括:

根据预设的配置文件确定任务流程内包含的各子任务流程的触发方式、执行顺序和相互之间的依赖关系;

按照设定的触发方式依次触发相应的子任务流程,并且按照设定顺序执行已被触发的子任务流程,其中,在确定至少一个子任务流程已执行完毕时,根据所述子任务流程之间的依赖关系,开始执行依赖所述至少一个子任务流程并且已被触发的其他子任务流程。

一种用于执行ETL调度的装置,包括:

存储单元,用于保存配置文件,该配置文件至少包含归属于ETL调度的若干任务流程内各子任务流程的触发方式和相互之间的依赖关系;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200910203276.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top