作家
登录

大数据分析技术与实战之Spark Streaming

作者: 来源: 2017-10-11 11:56:48 阅读 我要评论


第2步,打包分析器。在master节点启动IntelliJ IDEA创建工程WindowWordCount编辑分析器,如图21,并将分析器直接打包至master节点dong用户的主目次下,如图22所示。

跟着信息技巧的迅猛成长,数据量出现出爆炸式增长趋势,数据的种类与变更速度也远远超进出们的想象,是以人们对大年夜数据处理提出了更高的请求,越来越多的范畴急切须要大年夜数据技巧来解决范畴内的关键问题。在一些特定的范畴中(例如金融、灾害预警等),时光就是金钱、时光可能就是生命!然而传统的批处理框架却一向难以知足这些范畴中的及时性需求。为此,出现出了一批如S4、Storm的流式计算框架。Spark是基于内存的大年夜数据综合处理引擎,具有优良的功课调剂机制和快速的分布式计算才能,使其可以或许加倍高效地进行迭代计算,是以Spark可以或许在必定程度上实现大年夜数据的流式处理。

大年夜数据分析技巧与拭魅战之Spark Streaming

Spark Streaming是Spark上的一个流式处理框架,可以面向海量数据实现高吞吐量、高容错的及时F算。Spark Streaming支撑多种类型数据源,包含Kafka、Flume、trwitter、zeroMQ、Kinesis以及TCP sockets等,如图1所示。Spark Streaming及时吸法术据流,并按照必定的时光距离将持续的数据流拆分成一批批离散的数据集;然后应用诸如map、reducluce、join和window等丰富的API进行复杂的数据处理;最后提交给Spark引擎进交运算,获得批量结不雅数据,是以其也被称为准及时处理体系。

大年夜数据分析技巧与拭魅战之Spark Streaming
图1 Spark Streaming支撑多种类型数据源

今朝应用最广泛的大年夜数据流式处理框架是Storm。Spark Streaming 最低0.5~2s做一次处理(而Storm最快可达0.1s),在及时性和容错方面不如Storm。然而Spark Streaming的集成性异常好,经由过程RDD不仅可以或许与Spark上的所有组件无缝连接共享数据,还能异常轻易地与Kafka、Flume等分布式日记收集框架进行集成;同时Spark Streaming的吞吐量异常高,远远优于Storm的吞吐量,如图2所示。所以固然Spark Streaming的处理延迟高于Storm,然则在集成性与吞吐量方面的优势使其更实用于大年夜数据背景。

大年夜数据分析技巧与拭魅战之Spark Streaming

Spark Streaming编程模式


图2 Spark Streaming与Storm吞吐量比较图

Spark Streaming基本概念

批处理时光距离

在Spark Streaming中,对数据的采集是及时、逐条进行的,然则对数据的处理倒是分批进行的。是以,Spark Streaming须要设定一个时光距离,将该时光距离内采集到的数据同一进行处理,这个距离称为批处理时光距离。

窗口时光距离

窗口时光距离又称为窗口长度,它是一个抽象的时光概念,决定了Spark Streaming对RDD序列进行处理典范围与粒度,即竽暌姑户可以经由过程设置窗口长度来对一准时光范围内的数据进行统计和分析。如不雅设批处理时光设为1s,窗口时光距离为3s,如3图所示,个中每个实心矩形表示Spark Streaming每1秒钟切搀扶的一个RDD,若干个实心矩形块表示一个以时光为序的RDD序列,而透明矩形框表示窗口时光距离。易知窗口内RDD的数量最多为3个,即Spark Streming 每次最多对3个RDD中的数据进行统计和分析。对于窗口时光距离还须要留意以下几点:

  • 以图3为例,在体系启动后的前3s内,因进入窗口的RDD不足3个,然则跟着时光的推移,最终窗口将被填满。
  • 不合窗口内所包含的RDD可能会有重叠,即当前窗口内的数据可能被厥后续若干个窗口所包含,是以在一些应用处景中,对于已经处理过的数据不克不及急速删除,以备后续计算应用。
  • 窗口时光距离必须是批处理时光距离的┞符数倍。

大年夜数据分析技巧与拭魅战之Spark Streaming
图3 窗口时光距离示意图

滑动时光距离

滑动时光距离决定了Spark Streaming对数据进行统计与分析的频率,多涌如今与窗口相干的操作中。滑动时光距离是基于批处理时光距离提出的,其必须是批处理时光距离的┞符数倍。在默认的情况下滑动时光距离设置为与批处理时光距离雷同的值。如不雅批处理时光距离为1s,窗口距离为3s,滑动时光距离为2s,如图4所示,其含义是每隔2s对以前3s内产生的3个RDD进行统计分析。

大年夜数据分析技巧与拭魅战之Spark Streaming

DStream根本概念

DStream是Spark Streaming的一个根本抽象,它以离散化的RDD序列的情势近似描述了持续的数据流。DStream本质上是一个以时光为键,RDD为值的哈希表,保存了按时光次序产生的RDD,而每个RDD封装了批处理时光距离内获取到的数据。Spark Streaming每次将新产生的RDD添加到哈希表中,而对于已经不再须要的RDD则会大年夜这个哈希表中删除,所以DStream也可以简单地舆解为以时光为键的RDD的动态序列。设批处理时光距离为1s,图5为4s内产生的DStream示意图。

 1/9    1 2 3 4 5 6 下一页 尾页

  推荐阅读

  业界关注的NFV,近况如何?

实现了功能虚拟化的收集可以或许使通信办事供给商快速供给办事、分析和主动化的收集,加快新办事投向市场的周期,并有效应用数据中间的通用平台。收集功能虚拟化旨在赞助电信行业加快立异>>>详细阅读


本文标题:大数据分析技术与实战之Spark Streaming

地址:http://www.17bianji.com/lsqh/37783.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)