2015年8月31日星期一

Spark入门实战系列--7.Spark Streaming(上)--实时流计算Spark Streaming原理介绍 - shishanyuan

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
Spark入门实战系列--7.Spark Streaming(上)--实时流计算Spark Streaming原理介绍 - shishanyuan  阅读原文»

【注】该系列文章以及使用到安装包/测试数据 可以在《倾情大奉送--Spark入门实战系列》获取

1Spark Streaming简介

1.1 概述

Spark Streaming Spark核心API的一个扩展,可以实现高吞吐量的、具备容错机制的实时流数据的处理。支持从多种数据源获取数据,包括KafkFlumeTwitterZeroMQKinesis 以及TCP sockets,从数据源获取数据之后,可以使用诸如mapreducejoinwindow等高级函数进行复杂算法的处理。最后还可以将处理结果存储到文件系统,数据库和现场仪表盘。在“One Stack rule them all”的基础上,还可以使用Spark的其他子框架,如集群学习、图计算等,对流数据进行处理。

Spark Streaming处理的数据流图:

clip_image002

Spark的各个子框架,都是基于核心Spark的,Spark Streaming在内部的处理机制是,接收实时流的数据,并根据一定的时间间隔拆分成一批批的数据,然后通过Spark Engine处理这些批数据,最终得到处理后的一批批结果数据。

对应的批数据,在Spark内核对应一个RDD实例,因此,对应流数据的DStream可以看成是一组RDDs,即RDD的一个序列。通俗点理解的话,在流数据分成一批一批后,通过一个先进先出的队列,然后 Spark Engine从该队列中依次取出一个个批数据,把批数据封装成一个RDD,然后进行处理,这是一个典型的生产者消费者模型,对应的就有生产者消费者模型的问题,即如何协调生产速率和消费速率。

1.2 术语定义

l离散流(discretized stream)或DStream:这是Spark Streaming对内部持续的实时数据流的抽象描述,即我们处理的一个实时数据流,在Spark Streaming中对应于一个DStream 实例。

l批数据(batch data:这是化整为零的第一步,将实时流数据以时间片为单位进行分批,将流处理转化为时间片数据的批处理。随着持续时间的推移,这些处理结果就形成了对应的结果数据流了。

l时间片或批处理时间间隔( batch interval:这是人为地对流数据进行定量的标准,以时间片作为我们拆分流数据的依据。一个时间片的数据对应一个RDD实例。

l窗口长度(window length:一个窗口覆盖的流数据的时间长度。必须是批处理时间间隔的倍数,

Xcode7 无账号真机测试!! - 恣�垡�  阅读原文»

【摘要】Xcode 7如何免费真机调试iOS应用:运行Xcode后,点击菜单中的Preferences进入Accounts标签,这里选择添加Apple ID:在弹出的对话框中登入你的Apple ID,没有的话去注册一个就是了登录成功后会看到下面这样的信息:下面要做的是是生成开发证书,选中有Free的那项,然... 阅读全文

阅读更多内容

没有评论:

发表评论