[发明专利]一种ETL流程在分布式架构运行的方法在审
申请号: | 201811329559.3 | 申请日: | 2018-11-09 |
公开(公告)号: | CN109522004A | 公开(公告)日: | 2019-03-26 |
发明(设计)人: | 刘世荣;陈志雄;赖清鑫 | 申请(专利权)人: | 福建南威软件有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F9/54 |
代理公司: | 福州元创专利商标代理有限公司 35100 | 代理人: | 蔡学俊 |
地址: | 350003 福建省福州市鼓楼*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式架构 拓扑结构 修改组件 单节点 构建 集群 发布 | ||
本发明涉及一种ETL流程在分布式架构运行的方法。通过采用Strom技术,以及在不修改组件原有逻辑,在发布运行的时候,将组件构造成Strom的Spout、Blot,然后构建拓扑结构到Storm集群运行,可以支持ETL流程能在原有传统单节点模式下运行也可以切换到分布式架构下运行。
技术领域
本发明涉及一种ETL流程在分布式架构运行的方法。
背景技术
Storm 是一个自由开源的,分布式的,可靠的,容错的数据流处理系统,擅长处理海量数据,适用于数据实时处理而非批处理。它会把工作任务委托给不同类型的组件,每个组件负责处理一项简单特定的任务。Storm 集群的输入流由一个被称作 Spout 的组件管理,Spout 把数据传递给 Bolt, Bolt 要么把数据保存到某种存储器,要么把数据传递给其它的 Bolt。
现有技术如申请号(CN201810090048.4)的发明,一种完全基于分布式内存计算的ETL系统,本系统包括数据抽取模块、数据处理模块、数据整合模块、数据输出模块、元数据管理模块5大功能模块和一个ETL作业流程引擎;元数据管理模块,并输出元数据控制文件供ETL作业流程引擎使用;ETL作业流程引擎,读取元数据控制文件,计算各节点所处的层数,并将各作业节点按层数进行分层;ETL作业流程引擎按照由低层到高层的执行路径依次运行各层的ETL作业,最终完成ETL作业流程图中所有ETL作业的执行。本系统基于Spark和Alluxio技术,提高了系统架构的弹性,简化了数据管理,提升了数据加工性能。本申请提案采取使用Storm,可以使用流程原有数据格式。
现有技术如申请号(CN201510425219.0)的发明,公开了一种实时ETL系统及方法,包括ETL客户端、分布式数据缓存队列、分布式状态管理机和ETL群集。所述ETL客户端,用于设计ETL流程、测试ETL流程和发布ETL流程;所述分布式数据缓存队列,用于缓存输入数据;所述分布式状态管理机,用于存储系统状态信息;所述ETL群集,用于按行从数据源获取输入数据,并将输入数据缓存到分布式数据缓存队列中,然后对输入数据进行处理。
发明内容
本发明的目的在于解决ETL流程能在原有传统的单节点模式下运行切换到分布式架构下运行的兼容问题,而提供一种ETL流程在分布式架构运行的方法。
为实现上述目的,本发明的技术方案是:一种ETL流程在分布式架构运行的方法,包括如下步骤,
步骤S1、识别各组件的类型,对于数据输入类的组件构造成Storm的Spout组件,其余类的组件构造成Storm的Blot组件,根据流程中组件间的连接关系,构造Storm的拓扑,配置各个组件需要的线程数;其中,Spout组件调用数据输入类的运行逻辑,获取数据并加入输出数据缓存队列,定时或当队列达到预定量时就推送到下一个组件;Bolt组件不断监听是否接收到数据传递Tuple,接收到时则调用其原有ETL组件的运行逻辑;
步骤S2、发送拓扑至Storm集群里,使得Storm自动分配组件生成运行实例到集群的各个节点上;
步骤S3、Spout与Bolt,Blot与Blot之间的数据传递Tuple直接使用原ETL流程组件的处理后的数据;当组件接收到Tuple的时候,先判断是否是定时标识flag,如果flag不为空,则将当前组件的输出数据缓存队列全部推送到下一组件并清掉当前缓存;如果flag为空且当前Tuple为待处理数据时,则当前组件处理这条数据,并加入输出数据缓存队列;
步骤S4、当有数据没成功处理完,可通过Strom的自动重发,由Spout组件重新发送失败的数据到下一组件处理。
相较于现有技术,本发明具有以下有益效果:本发明通过采用Strom技术,以及在不修改组件原有逻辑,在发布运行的时候,将组件构造成Strom的Spout、Blot,然后构建拓扑结构到Storm集群运行,可以支持ETL流程能在原有传统单节点模式下运行也可以切换到分布式架构下运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建南威软件有限公司,未经福建南威软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811329559.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电力业务系统拓展公共组件
- 下一篇:跨平台图形化程序设计方法