当前位置: 首页 > 专利查询>中山大学专利>正文

基于批处理和流式处理的数据处理架构及数据处理方法技术

技术编号:15690538 阅读:99 留言:0更新日期:2017-06-24 03:00
本发明专利技术涉及一种基于批处理和流式处理的数据处理架构,包括:数据采集模块,从多个数据采集终端中获取采集的实时数据,并将采集的数据传输至批处理模块和流式处理模块;批处理模块,对接收的实时数据进行持久化处理,采用重计算的机制对经持久化处理的实时数据进行批量处理,根据处理的结果生成不同粒度的批处理视图;流式处理模块,用于对接收的实时数据采用增量计算的机制进行流式处理,并根据处理的结果生成不同粒度的流式处理视图;数据合并模块,采用相应的合并策略对批处理视图、流式处理视图进行合并;数据可视化模块,对批处理视图、流式处理视图或合并后的批处理视图、流式处理视图进行展示;资源监控模块,用于对以上模块进行资源监控。

Data processing architecture and data processing method based on batch processing and stream processing

The invention relates to a method based on batch processing and streaming data processing framework, including data acquisition module, real-time data acquisition from multiple data acquisition terminal, and the data collected will be transmitted to the batch processing module and stream processing module; batch processing module, the real-time data received for persistence the mechanism of treatment, re computation for real-time data processing by the persistence of batch processing, batch view generation different size according to the processing result; stream processing module, a mechanism for the incremental computation of real time data of the received stream, and generates a stream processing view of different size according to the results; data merging module, the combined strategy of batch flow view, process view merging; data visualization module of batch as Graphs, stream processing views or merged batch views, stream processing views are displayed; a resource monitoring module is used to monitor the resources of the above modules.

【技术实现步骤摘要】
基于批处理和流式处理的数据处理架构及数据处理方法
本专利技术涉及数据处理
,更具体地,涉及一种基于批处理和流式处理的数据处理架构及数据处理方法。
技术介绍
随着互联网的普及、物联网的快速发展以及智能手机等设备的广泛使用,使得人们能随时随地产生数据,引起了数据的爆炸式增长。针对大规模数据,人们已经提出分布式的批处理模型和流式处理模型。其中,批处理模型实现了大规模历史数据的高吞吐、海量分析和挖掘,它先存储后计算,往往适用于实时性要求不高,同时数据的准确性和全面性更为重要的场景,批处理模型被广泛的应用于离线分析、离线机器学习等领域。而流式处理模型更注重于对流式数据的实时分析,数据以流的方式到达,携带了大量信息,只有小部分的流式数据被保存在有限的内存中。流式处理模型被广泛地应用在在线推荐、在线分析、在线机器学习等低延时的场景中。然而,批处理模型和流式处理模型的数据处理模式单一、使用场景有限,它们都是针对单一的问题和场景提出的解决方案,两者之间并不具备通用性。批处理模型能够处理更加全面的数据进而得到比较准确的结果,却延时比较大。流式处理模型能低延时地进行计算,却只在内存中缓存比较有限的数据导致计算精度比较低。而随着科技的进步,现代企业越来越需要一种低延时的方法同时处理历史数据和实时数据。既能保证对整个数据集的全面处理,又能保证处理的效率。
技术实现思路
本专利技术为解决以上技术的难题,提供了一种基于批处理和流式处理的数据处理架构,该架构具备批处理和流式处理的能力,因而在保证对数据集进行全面处理的同时能够兼顾处理的效率。为实现以上专利技术目的,采用的技术方案是:一种基于批处理和流式处理的数据处理架构,包括数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块和资源监控模块;其中数据采集模块用于从多个数据采集终端中获取采集的实时数据,并将采集的数据传输至批处理模块和流式处理模块;所述批处理模块用于对接收的实时数据进行持久化处理,然后在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批量处理,并根据处理的结果生成不同粒度的批处理视图;所述流式处理模块用于对接收的实时数据采用增量计算的机制进行流式处理,并根据处理的结果生成不同粒度的流式处理视图;所述数据合并模块用于根据具体查询需求,采用相应的合并策略对批处理视图、流式处理视图进行合并;所述数据可视化模块用于对批处理视图、流式处理视图或合并后的批处理视图、流式处理视图进行展示;所述资源监控模块用于对数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块进行资源监控。优选地,所述数据采集模块包括数据收集子模块和数据清洗子模块,所述数据收集子模块用于接收从多个数据采集终端中获取采集的实时数据,所述数据清洗子模块用于采用相应的过滤规则对接收的实时数据进行清洗。优选地,所述批处理模块包括数据预处理子模块、数据处理子模块和批处理视图存储子模块;所述数据预处理子模块用于对接收的实时数据采用数据集成技术、数据变换技术、数据规约技术进行持久化处理;所述数据处理子模块在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批处理;所述批处理视图存储子模块用于将数据处理子模块得到的处理结果保存在Hbase中,以生成不同粒度的批处理视图。优选地,所述流式处理模块包括数据处理子模块、流式处理视图存储子模块,其中所述数据处理子模块用于采用增量计算的机制对实时数据进行流式处理,所述流式处理视图存储子模块用于对数据处理子模块产生的数据处理结果保存在Hbase中,以生成不同粒度的流式处理视图。优选地,所述数据采集模块采用Flume日志采集系统实现。优选地,所述批处理模块采用Spark集群实现。优选地,所述流式处理模块采用Storm集群实现。同时,本专利技术还提供了一种基于以上架构的数据处理方法,其方案具体包括以下步骤:S1.数据采集模块用于从多个数据采集终端中获取采集的实时数据,并将采集的数据传输至批处理模块和流式处理模块;S2.批处理模块对接收的实时数据进行持久化处理,然后在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批量处理,并根据处理的结果生成不同粒度的批处理视图;S3.流式处理模块对接收的实时数据采用增量计算的机制进行流式处理,并根据处理的结果生成不同粒度的流式处理视图;S4.数据合并模块根据具体查询需求,采用相应的合并策略对批处理视图、流式处理视图进行合并;S5.数据可视化模块对批处理视图、流式处理视图或合并后的批处理视图、流式处理视图进行展示;S6.资源监控模块对以上流程中数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块进行资源监控。与现有技术相比,本专利技术的有益效果是:本专利技术提供的架构通过将批处理模块、流式处理模块搭配使用,可以保证整个计算结果的精准度,同时兼顾数据处理效率。附图说明图1为本专利技术提供的架构的结构图。图2为数据收集模块的示意图。图3为Spark集群的计算任务执行图。图4为流式处理模块中增量计算的流程图。图5、图6、图7为批处理模块和流式处理模块数据同步的示意图。图8为数据合并模块执行数据处理的流程示意图。具体实施方式附图仅用于示例性说明,不能理解为对本专利的限制;以下结合附图和实施例对本专利技术做进一步的阐述。实施例1批处理和流式处理的数据处理架构,如图1所示,包括数据采集模块10、批处理模块20、流式处理模块30、数据合并模块40、数据可视化模块50和资源监控模块60;其中数据采集模块用于从多个数据采集终端中获取采集的实时数据,并将采集的数据传输至批处理模块和流式处理模块;所述批处理模块用于对接收的实时数据进行持久化处理,然后在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批量处理,并根据处理的结果生成不同粒度的批处理视图;所述流式处理模块用于对接收的实时数据采用增量计算的机制进行流式处理,并根据处理的结果生成不同粒度的流式处理视图;所述数据合并模块用于根据具体查询需求,采用相应的合并策略对批处理视图、流式处理视图进行合并;所述数据可视化模块用于对批处理视图、流式处理视图或合并后的批处理视图、流式处理视图进行展示;所述资源监控模块用于对数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块进行资源监控。在具体的实施过程中,数据采集模块10的具体实施方式可以为:采用分布式、高可靠和高可用的海量日志采集和传输系统对多源数据进行实时接收,如Flume日志采集系统。如图2所示,该架构中设置了三个代理,分别为Agent1、Agent2和MasterAgent。Flume日志采集系统使用两个Source接收外部数据,一个是Agent1中的AvroSource,用来监听一个IP和端口号,另一个是Agent2中的Spooldir,用来监听一个目录。通过对采集到的实时数据进行初步的数据过滤之后,把从两个Source接收到的数据发给MasterAgent中的AvroSource。该架构采用复制策略把AvroSource中接收到的数据同时发送到FileChannel和MemoryChannel中,然后数据最终被传送到HDFSSink和Kafka本文档来自技高网...
基于批处理和流式处理的数据处理架构及数据处理方法

【技术保护点】
一种基于批处理和流式处理的数据处理架构,其特征在于:包括数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块和资源监控模块;其中数据采集模块用于从多个数据采集终端中获取采集的实时数据,并将采集的数据传输至批处理模块和流式处理模块;所述批处理模块用于对接收的实时数据进行持久化处理,然后在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批量处理,并根据处理的结果生成不同粒度的批处理视图;所述流式处理模块用于对接收的实时数据采用增量计算的机制进行流式处理,并根据处理的结果生成不同粒度的流式处理视图;所述数据合并模块用于根据具体查询需求,采用相应的合并策略对批处理视图、流式处理视图进行合并;所述数据可视化模块用于对批处理视图、流式处理视图或合并后的批处理视图、流式处理视图进行展示;所述资源监控模块用于对数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块进行资源监控。

【技术特征摘要】
1.一种基于批处理和流式处理的数据处理架构,其特征在于:包括数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块和资源监控模块;其中数据采集模块用于从多个数据采集终端中获取采集的实时数据,并将采集的数据传输至批处理模块和流式处理模块;所述批处理模块用于对接收的实时数据进行持久化处理,然后在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批量处理,并根据处理的结果生成不同粒度的批处理视图;所述流式处理模块用于对接收的实时数据采用增量计算的机制进行流式处理,并根据处理的结果生成不同粒度的流式处理视图;所述数据合并模块用于根据具体查询需求,采用相应的合并策略对批处理视图、流式处理视图进行合并;所述数据可视化模块用于对批处理视图、流式处理视图或合并后的批处理视图、流式处理视图进行展示;所述资源监控模块用于对数据采集模块、批处理模块、流式处理模块、数据合并模块、数据可视化模块进行资源监控。2.根据权利要求1所述的基于批处理和流式处理的数据处理架构,其特征在于:所述数据采集模块包括数据收集子模块和数据清洗子模块,所述数据收集子模块用于接收从多个数据采集终端中获取采集的实时数据,所述数据清洗子模块用于采用相应的过滤规则对接收的实时数据进行清洗。3.根据权利要求1所述的基于批处理和流式处理的数据处理架构,其特征在于:所述批处理模块包括数据预处理子模块、数据处理子模块和批处理视图存储子模块;所述数据预处理子模块用于对接收的实时数据采用数据集成技术、数据变换技术、数据规约技术进行持久化处理;所述数据处理子模块在满足执行批处理条件的情况下,采用重计算的机制对经持久化处理的实时数据进行批处理;所述批处理视图存储子模块用于将数据处理子模块得到的处...

【专利技术属性】
技术研发人员:吴贺俊冯辉
申请(专利权)人:中山大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1