大数据实时计算平台技术综述

中国新通信 / 2018年10月10日 13:03

互联网+

大数据技术创新

周志阳+陈飞

【摘要】 随着互联网和互联网技术的快速发展,每天产生的数据正以指数级的速度增长,对这些大量数据的处理与分析具有巨大的应用价值。以Hadoop为代表的大数据技术的出现,可以很好的解决大量静态数据集的数据处理与分析,但是很多数据都是实时产生的,人们希望可以实时的处理这些数据,这就需要流计算处理技术来实时处理这些数据,及时产出应用价值。

【关键字】 实时计算 大数据 Storm Spark streaming Apache Flink

引言

在当前大数据背景下,优化发展应用实时计算平台技术,可以有助于解决现有计算平台处理海量数据实时响应能力差的问题,提升计算平台处理大数据的速度[1-2],确保在大数据背景下,可以应用实时计算平台技术胜任数据挖掘任务,实时处理大数据。具体综述内容如下所示:

一、相关研究

流数据一般在线实时产生的,通常是以元组为单位,源源不断的元组就构成了流式数据。当前,大数据背景下的流数据通常具有流量巨大、流速特别快、难以快速存储与恢复等特性,即包含结构化的数据也包含半结构化和非结构化的数据。结构化的数据一般遵守固定的格式,很少含有或不含有冗余信息,比如sql数据库中的数据一般都是结构化的数据;半结构化和非结构化的数据一般无法用二维属性表来表示,办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等等[1]。

二、实时计算相关技术及开源平台

这里主要介绍流计算开源平台,介绍他们的框架与原理,介绍目前处理大数据常用的实时计算平台中的Storm、Spark streaming、Apache Flink技术。

2.1 Storm实时计算平台技术

Storm是当下最流行的实时计算平台之一,它的计算模型中主要有Spout和Bolt两种角色,Bolt一般会按照一定的流分组策略订阅上游的Spout。Spout把数据以Tuple为单位源源不断发送给订阅它的Bolt,Bolt一般负责数据的具体处理,处理后的数据即可以保存到外部数据库又可以继续发送给下游的Bolt。

在大数据背景下,通过引入Storm分布式实时计算平台,进行大规模数据的分类分析,设计了基于Storm框架的KNN分类算法。该算法将整个过程分为数据接入、分类分析、结果输出等阶段,在框架预定义的组件中分别编程实现,各组件通过数据流连通形成任务实体,提交到集群运行完成。通过对比分析和性能监测,验证了所提方案具有低延迟和高吞吐量的优势,集群运行状况良好,负载均衡。相关研究实验表明,基于Storm平台处理海量数据实时性较高,能够胜任大数据背景下的数据挖掘任务。

2.2 spark streaming实时计算平台技术

Spark Streaming是大规模流式数据处理的新贵,将流式计算分解成一系列短小的批处理作业。在大数据环境中,优化设计应用实时计算平台技术, 基于可伸缩的实时虚拟机调度策略,能够利用分布式计算系统Spark,构建可扩展的虚拟机系统,提升处理数据的性能,可以实现虚拟机在线迁移与动态扩容。Spark Streaming是将流式计算分解成一系列短小的批处理作业。这里的批处理引擎是Spark,也就是把Spark Streaming的输入数据按照batch size(如1秒)分成一段一段的数据(Discretized Stream),每一段数据都转换成Spark中的RDD(Resilient Distributed Dataset),然后将Spark Streaming中对DStream的Transformation操作变为针对Spark中对RDD的Transformation操作,将RDD经过操作变成中间结果保存在内存中。整个流式计算根据业务的需求可以对中间的结果进行叠加,或者存储到外部设备[2]。

2.3 Apache Flink实时计算平台技术

Flink 是一个针对流数据和批数据的分布式处理引擎。它主要是由 Java 代码实现。目前主要还是依靠开源社区的贡献而发展。Flink所要处理的主要场景就是流数据,批数据只是流数据的一个极限特例而已。Flink 会把所有任务当成流来处理,这也是其最大的特点。Flink 可以支持本地的快速迭代,以及一些环形的迭代任务。并且 Flink 可以定制化内存管理,Flink 并没有将内存完全交给应用层, Flink处理大数据速度快,满足大数据背景下应用实时计算平台的需求。

三、结束语

综上所述,通过以上内容分析,可以在当前处理大数据中,可以优化应用实时计算平台技术,不仅可以进一步提升处理大数据的速度,也可以提升实时计算平台的运行效率;在实际应用实时计算平台技术处理大数据过程中,可以在Storm、Spark streaming以及Flink平臺技术中选择合适的实时计算平台技术,对促进未来实施推广大数据实时计算平台技术,发挥积极影响。

参 考 文 献

[1] 王铭坤,袁少光,朱永利等.基于Storm的海量数据实时聚类[J].计算机应用,2014,34(11):3078-3081.

[2] 王志平,李小勇.基于实时计算平台的虚拟机调度策略[J].计算机工程,2016,42(5):30-34,41.

1.环球科技网遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.环球科技网的原创文章,请转载时务必注明文章作者和"来源:环球科技网",不尊重原创的行为环球科技网或将追究责任;3.作者投稿可能会经环球科技网编辑修改或补充。