[发明专利]基于Web和Kafka的分布式数据集成系统及方法有效
申请号: | 201911297173.3 | 申请日: | 2019-12-16 |
公开(公告)号: | CN111061715B | 公开(公告)日: | 2022-07-01 |
发明(设计)人: | 鄂海红;宋美娜;王园 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F16/215 | 分类号: | G06F16/215;G06F16/2457;G06F16/25;G06F16/27 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 蔡丽 |
地址: | 100876 北京市海淀区西*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 web kafka 分布式 数据 集成 系统 方法 | ||
本发明公开了一种基于Web和Kafka的分布式数据集成系统及方法,其中,系统包括:控制台模块,用于为用户提供控制台,使得用户以Web页面操作的形式进行ETL任务的创建和监控;管理服务模块,用于为控制台模块提供管理服务API;模式管理模块,用于管理数据源端的schema和目的地端的schema及其映射;数据抽取模块,用于将管理数据源端的数据抽取数据到消息队列;数据处理模块,用于对数据进行清洗和转换;数据加载模块,用于将数据从消息队列加载到目的地。该系统使得基于Kafka Connect创建ETL实例的过程操作更简单、管理更规范、配置更灵活,并且使得ETL程序耦合度低、容错性高,易于扩展和集成。
技术领域
本发明涉及信息技术及数据业务技术领域,特别涉及一种基于Web和Kafka的分布式数据集成系统及方法。
背景技术
在进行跨应用的数据融合计算时,首先需要将数据从孤立的数据源中采集出来,汇集到可被计算平台高效访问的目的地,此过程被称为ETL,即数据的抽取(Extract)、转换(Transform)和加载(Load)。传统上,ETL是通过批量作业完成的,即定期从数据源加载(增量)数据,按照转换逻辑进行处理,并写入目的地。根据业务需要和计算能力的不同,批量处理的延时通常从天到分钟级不等。在一些应用场景下,ETL需要尽可能短的延迟,这就出现了实时ETL的需求。
Apache Flink使用流式处理来模拟批量处理,能够提供亚秒级的、符合Exactly-once语义的实时处理能力。因此基于ApacheFlink可以构建实时的数据通道,在不同的存储之间搬运和转换数据。由于Apache Flink“端到到”和流式特性让其构建实时的、符合Exactly-once语义的ETL任务具有很大的优势。但是也因此带来一些问题,由于“端到端”特性,数据的抽取、转换和加载过程耦合在一起,失去了数据抽取和数据加载过程的可插拔性,降低了程序的重用性。
KafkaConnect是Kafka0.9版本以后提供的客户端工具集,可以更方便的创建和管理数据流管道。它为Kafka和其它系统创建规模可扩展的、可信赖的流数据提供了一个简单的模型,通过connectors可以将大数据从其它系统导入到Kafka中,也可以从Kafka中导出到其它系统。基于Kafka Connect可以构建数据的抽取、转换和加载过程分离的实时ETL实例。但是构建一个基于Kafka Connect的实时ETL过程需要手动配置KafkaConnect的Worker进程的配置,并通过REST API管理Connectors,并需要手动管理connector的配置,过程复杂繁琐缺乏易用性和可管理性。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种基于Web和Kafka的分布式数据集成系统,该系统使得基于Kafka Connect创建ETL实例的过程操作更简单、管理更规范、配置更灵活,并且提出的实时分布式ETL方法使得ETL程序耦合度低、容错性高,易于扩展和集成。
本发明的另一个目的在于提出一种基于Web和Kafka的分布式数据集成方法。
为达到上述目的,本发明一方面实施例提出了一种基于Web和Kafka的分布式数据集成系统,包括:控制台模块,用于为用户提供控制台,以对集群进行Kafka Broker管理、Kafka Topic管理、Connector管理和ETL任务管理,使得所述用户以Web页面操作的形式进行ETL任务的创建和监控;管理服务模块,用于将Kafka、ETL Job、Connector、Configuration、Schema的操作进行API封装,以为所述控制台模块提供管理服务API;模式管理模块,用于管理数据源端的schema和目的地端的schema及其映射;数据抽取模块,用于将所述管理数据源端的数据抽取数据到消息队列;数据处理模块,用于对所述数据进行清洗和转换;数据加载模块,用于将所述数据从所述消息队列加载到目的地。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911297173.3/2.html,转载请声明来源钻瓜专利网。