[发明专利]一种基于工作流的通用ETL工具的过程模型生成方法有效
申请号: | 201710536250.0 | 申请日: | 2017-07-04 |
公开(公告)号: | CN107391611B | 公开(公告)日: | 2019-11-12 |
发明(设计)人: | 周文欢;张天宝;徐衍;吴同凯;方鹏;初日辉;徐苏君;蔡雷鸣;花子岚;陈梵 | 申请(专利权)人: | 南京国电南自电网自动化有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25 |
代理公司: | 南京纵横知识产权代理有限公司 32224 | 代理人: | 董建林 |
地址: | 211100 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 工作流 通用 etl 工具 过程 模型 生成 方法 | ||
1.一种基于工作流的通用ETL工具的过程模型生成方法,其特征在于,包括以下步骤:
S1:建立基于工作流的ETL模型工具,包括作业主控模块和抽取、转换、装载模块;
S2:构建与所述ETL模型工具对应的流程图T,所述流程图T包括若干个有向图G,分别定义为G1…Gn;
S3:建立变换、分解、合并、串行化、并行化、添加还原点、分流和复制八种变换规则;
S4;在ETL模型工具整个流程执行过程中,利用所述八种变换规则来改变各有向图G,直至选出变换后时间最小的情况下的所有有向图G,构成通用ETL模型工具的过程模型,以实现优化ETL工具整个流程执行过程;
所述步骤S3中的八种变换规则具体包括:变换、分解、合并、串行化、并行化、添加还原点、分流和复制;
所述变换Swap(v1,v2)具体为:将节点v1和节点v2相互交换;
所述分解Split(v1+2,v1,v2)具体为:将节点v1+2分解为v1、v2;
所述合并Merge(v1,v2,v1+2)具体为:将节点v1、v2合并为v1+2;
所述串行化Factorize(v1,v2,v3,v1+2)具体为:将处于不同的数据流中,但是类型相同的节点v1、v2合并为一个新的节点v1+2;
所述并行化Distribute(v1,v2,v3,v1+2)具体为:将节点v1+2分解为两个类型相同的节点v1、v2,让节点v1、v2处于不同的数据流中;
所述添加还原点AddRecoveryPoint(v,vRP)具体为:在节点v处添加还原点vRP;
所述分流Partion(v1,v2,n)具体为:将节点v1、v2之间的数据流分为n份;
所述复制Replicate(v1,v2,n)具体为:将节点v1、v2之间的数据复制n份。
2.根据权利要求1所述的一种基于工作流的通用ETL工具的过程模型生成方法,其特征在于:所述步骤S1中的作业主控模块用于完成对ETL所有作业的调度工作,实现ETL作业的定时、排队、并行调度、流程控制、日志记录,根据配置文件确定各个Job的启动条件、执行顺序以及是否依赖于其他的Job,当某个Job满足启动条件时,作业主控模块启动该Job,并按照顺序执行该Job的子任务流程。
3.根据权利要求2所述的一种基于工作流的通用ETL工具的过程模型生成方法,其特征在于:所述子任务流程为transformation标签里的转换任务。
4.根据权利要求1所述的一种基于工作流的通用ETL工具的过程模型生成方法,其特征在于:所述步骤S1中的抽取、转换、装载模块中各个步骤之间的数据传输流程是一个生产者消费者模型,每一个节点对下一个节点而言是生产者,节点和节点之间采用一个阻塞队列传递数据,前一个节点根据其连线上的规则,将数据处理后写入阻塞队列,后一个节点一条一条的从阻塞队列里读取数据,所有的这些节点组成Transformation。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京国电南自电网自动化有限公司,未经南京国电南自电网自动化有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710536250.0/1.html,转载请声明来源钻瓜专利网。