[发明专利]一种完全基于分布式内存计算的ETL系统及其方法在审
申请号: | 201810090048.4 | 申请日: | 2018-01-30 |
公开(公告)号: | CN108304538A | 公开(公告)日: | 2018-07-20 |
发明(设计)人: | 陈涛;黄卓凡;张志聪;李笋;林志广 | 申请(专利权)人: | 广东奡风科技股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 东莞市神州众达专利商标事务所(普通合伙) 44251 | 代理人: | 陈世洪 |
地址: | 510000 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 流程引擎 元数据管理模块 控制文件 内存计算 元数据 数据抽取模块 数据处理模块 数据输出模块 数据整合模块 数据管理 读取 数据加工 系统架构 作业节点 低层 分层 输出 高层 | ||
一种完全基于分布式内存计算的ETL系统,本系统包括数据抽取模块、数据处理模块、数据整合模块、数据输出模块、元数据管理模块5大功能模块和一个ETL作业流程引擎;元数据管理模块,并输出元数据控制文件供ETL作业流程引擎使用;ETL作业流程引擎,读取元数据控制文件,计算各节点所处的层数,并将各作业节点按层数进行分层;ETL作业流程引擎按照由低层到高层的执行路径依次运行各层的ETL作业,最终完成ETL作业流程图中所有ETL作业的执行。本系统基于Spark和Alluxio技术,提高了系统架构的弹性,简化了数据管理,提升了数据加工性能。
技术领域
本申请涉及一种ETL系统,具体地,属于一种完全基于分布式内存计算的ETL系统及其方法。
背景技术
数据的爆发性增长和大数据应用的发展,给ETL(数据抽取、转换和加载)软件提供了前所未有的发展机会。传统的ETL软件大多基于单机架构,在处理海量数据时,IO吞吐量、系统资源存在瓶颈,扩展困难且价格昂贵。随着分布式技术的出现,新一代基于Hadoop和Spark的ETL软件,以Hadoop分布式文件存储系统HDFS为存储层,以分布式内存计算框架Spark为计算层,利用先进的DAG执行引擎和性能强大的基于内存的多轮迭代计算技术,对海量数据进行深度加工,在性能上比单机的传统架构,比分布式计算架构MapReduce有了数倍的提升。但Hadoop+Spark的架构存在诸多不足,1、Spark在内存申请的逻辑上,存在明显缺陷,体现在内存不足时无法释放,只能启动自杀的方式来结束任务。内存消费者在内存不足时不能要求另外的内存消费者释放,只能通过把数据写到磁盘的方式来释放,当数据数量级规模的增长,性能急剧下降。2、Hadoop + Spark架构依赖于Hadoop的HDFS作为存储系统,不能支持更多的分布式存储系统,架构弹性和灵活性不足。
发明内容
本发明为克服上述现有技术所述的至少一种缺陷,提供一种完全基于分布式内存计算的ETL系统及其方法。
本发明旨在至少在一定程度上解决上述技术问题。
本发明的首要目的是解决技术问题:如何克服Hadoop + Spark架构的技术缺陷。
本申请提供一种完全基于分布式内存计算的ETL系统,本系统包括数据抽取模块、数据处理模块、数据整合模块、数据输出模块、元数据管理模块5大功能模块和一个ETL作业流程引擎;其中,数据抽取模块抽取源数据,并根据数据分块规则在分布节点上动态生成多个Spark DataFrame,再通过线程池启动多个线程来调用数据处理模块对每个SparkDataFrame进行并行处理;数据处理模块,读取数据抽取模块生成的Spark DataFrame,经过元数据匹配检查和数据转换,得到中转数据;数据整合模块,对当天的中转数据和上一天的整合数据进行全量数据整合或历史数据整合,得到整合数据;数据输出模块,根据数据应用系统对数据格式的要求,对当天整合数据进行格式转换并输出;元数据管理模块,将系统各种要素进行参数化定义和管理,并输出元数据控制文件供ETL作业流程引擎使用;ETL作业流程引擎,读取元数据控制文件,采用广度优先搜索算法对元数据定义的ETL作业流程图进行解析,根据各节点的依赖关系,计算各节点所处的层数,并将各作业节点按层数进行分层;ETL作业流程引擎按照由低层到高层的执行路径依次运行各层的ETL作业,最终完成ETL作业流程图中所有ETL作业的执行。
进一步的,数据抽取模块包括数据接入模块和第一分布式数据集生成模块。
进一步的,数据接入模块是接口层,是本系统连接数据源的统一数据通道,通过该通道能够高并发、高可靠地抽取源数据;数据接入模块支持离线抽取和在线抽取两种数据抽取方式; 第一分布式数据集生成模块通过数据接入模块读取源数据,并根据数据分块规则在分布节点上动态生成多个Spark DataFrame,待数据处理模块进一步处理。
进一步的,数据处理模块包括数据检查模块和数据转换模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东奡风科技股份有限公司,未经广东奡风科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810090048.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:截留用户留言的方法和系统
- 下一篇:人才数据库建立方法、装置及存储介质