[发明专利]一种hadoop集群运行ETL流程的方法及装置在审
申请号: | 202010542084.7 | 申请日: | 2020-06-15 |
公开(公告)号: | CN111914007A | 公开(公告)日: | 2020-11-10 |
发明(设计)人: | 高东升;付铨;梅纲 | 申请(专利权)人: | 武汉达梦数据库有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F9/54 |
代理公司: | 深圳市六加知识产权代理有限公司 44372 | 代理人: | 向彬 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 hadoop 集群 运行 etl 流程 方法 装置 | ||
1.一种hadoop集群运行ETL流程的方法,其特征在于,包括:
根据ETL流程中的reduce节点,将ETL流程分解为一个或多个MRWork;其中,每个MRWork的组件在一个map reduce中运行;
对于每个MRWork,MRJob通过自定义DelegateInputFormat,分别将MRWork的每个数据源都拆分为多个分片数据源;
MRJob通过自定义DelegateMapper重写Mapper的run方法,来并发运行MRWork中的mapper graph;其中,MRWork中的mapper数由MRWork的数据源总分片数决定;
MRJob通过自定义DelegateReducer重写Reducer的run方法,来并发运行MRWork中的reducer graph;其中,MRWork中的reducer数根据reduce节点和/或hadoop集群可申请container数进行设置。
2.根据权利要求1所述的hadoop集群运行ETL流程的方法,其特征在于,在所述MRJob通过自定义DelegateReducer来运行MRWork中的reducer graph之后,所述方法还包括:
通过重写map reduce的OutputFormat为DummyOutputFormat来设置MR Job输出,并提交MRWork所在的MR Job。
3.根据权利要求1所述的hadoop集群运行ETL流程的方法,其特征在于,当ETL流程被分解为多个MRWork时,按照所述多个MRWork之间的依赖关系,先后处理每一个MRWork。
4.根据权利要求3所述的hadoop集群运行ETL流程的方法,其特征在于,对于任一MRWork,MRWork的运行依赖于其他MRWork的FileSink节点;则在处理该MRWork时,当该MRWork所依赖的FileSink组件运行完成后,再提交该MRWork运行。
5.根据权利要求1所述的hadoop集群运行ETL流程的方法,其特征在于,所述MRJob通过自定义DelegateInputFormat,分别将MRWork的每个数据源都拆分为多个分片数据源,具体为:
MR Job设置InputFormat为自定义的DelegateInputFormat,以便由DelegateInputFormat委托处理MRWork每个数据源的SourceInputFormat;
每个SourceInputFormat通过重写getSplits,实现对应数据源的分片以及对分片的读取。
6.根据权利要求5所述的hadoop集群运行ETL流程的方法,其特征在于,在每个SourceInputFormat重写getSplits之后,所述方法还包括:
每个SourceInputFormat通过重写createRecordReader来实现自己数据源的读取;其中,对于hadoop map reduce框架本身支持读取的数据源,实现分片数据源数据格式的record reader接口;对于hadoop map reduce框架本身不支持读取或支持度不满足要求的数据源,将createRecordReader定义为DummyRecordReader。
7.根据权利要求1-6任一所述的hadoop集群运行ETL流程的方法,其特征在于,所述reduce节点为排序组件、聚合组件、连接组件、增量比对组件或去重复组件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库有限公司,未经武汉达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010542084.7/1.html,转载请声明来源钻瓜专利网。