Apache Spark Streaming的简介
Spark Streaming通过将流数据按指定时间片累积为RDD,然后将每个RDD进行批处理,进而实现大规模的流数据处理。其吞吐量能够超越现有主流流处理框架Storm,并提供丰富的API用于流数据计算。
Spark Streaming 是一个批处理的流式计算框架。它的核心执行引擎是 Spark,适合处理实时数据与历史数据混合处理的场景,并保证容错性。
Spark Streaming 是构建在 Spark 上的实时计算框架,扩展了 Spark 流式大数据处理能力。 Spark Streaming 将数据流以时间片为单位进行分割形成 RDD,使用 RDD 操作处理每一块数据,每块数据(也就是 RDD)都会生成一个 Spark Job 进行处理,最终以批处理的方式处理每个时间片的数据。请参照下图1。
图 1 Spark Streaming 生成 Job
Spark Streaming 编程接口和 Spark 很相似。在 Spark 中,通过在 RDD 上用 Transformation(例如: map, f ilter 等)和 Action(例如: count, collect 等)算子进行运算。在 Spark Streaming中通过在 DStream(表示数据流的 RDD 序列)上进行算子运算。图 2 为 Spark Streaming 转化过程。
图2 Spark Streaming 转化过程
注:DStream是实时计算模型。
图 2 中 Spark Streaming 将程序中对 DStream 的操作转换为 DStream DAG。对每个时间片, DStream DAG 会产生一个 RDD DAG。在 RDD 中通过 Action
算 子 触 发 一 个 Job, 然 后 Spark Streaming 会 将 Job 提 交 给 JobManager。 JobManager会将 Job 插入维护的 Job 队列,然后 JobManager 会将队列中的 Job 逐个提交给 Spark
DAGScheduler,然后 Spark 会调度 Job 并将 Task 分发到各节点的 Executor 上执行。
Apache Spark Streaming的简介的更多相关文章
- Apache Spark Streaming的优点
Apache Spark Streaming的优点: (1)优势及特点 1)多范式数据分析管道:能和 Spark 生态系统其他组件融合,实现交互查询和机器学习等多范式组合处理. 2)扩展性:可以运行在 ...
- Offset Management For Apache Kafka With Apache Spark Streaming
An ingest pattern that we commonly see being adopted at Cloudera customers is Apache Spark Streaming ...
- Apache Spark Streaming的适用场景
使用场景: Spark Streaming 适合需要历史数据和实时数据结合进行分析的应用场景,对于实时性要求不是特别高的场景也能够胜任.
- Apache Spark Shark的简介
Shark是构建在Spark和Hive基础之上的数据仓库. 目前,Shark已经完成学术使命,终止开发,但其架构和原理仍具有借鉴意义. 它提供了能够查询Hive中所存储数据的一套SQL接口,兼容现有的 ...
- Apache Spark MLlib的简介
MLlib 是构建在 Spark 上的分布式机器学习库,充分利用了 Spark 的内存计算和适合迭代型计算的优势,将性能大幅度提升.同时由于 Spark 算子丰富的表现力, 让大规模机器学习的算法开发 ...
- Apache Spark GraphX的简介
简单地说,GraphX是大规模图计算框架. GraphX 是 Spark 中的一个重要子项目,它利用 Spark 作为计算引擎,实现了大规模图计算的功能,并提供了类似 Pregel 的编程接口. Gr ...
- Apache Spark Tachyon的简介
Tachyon是一个分布式内存文件系统,可以理解为内存中的HDFS. 为了提供更高的性能,将数据存储剥离Java Heap. 用户可以基于Tachyon实现RDD或者文件的跨应用共享,并提供高容错机制 ...
- Apache Spark 2.2.0 中文文档 - Spark Streaming 编程指南 | ApacheCN
Spark Streaming 编程指南 概述 一个入门示例 基础概念 依赖 初始化 StreamingContext Discretized Streams (DStreams)(离散化流) Inp ...
- Real Time Credit Card Fraud Detection with Apache Spark and Event Streaming
https://mapr.com/blog/real-time-credit-card-fraud-detection-apache-spark-and-event-streaming/ Editor ...
随机推荐
- Android使用Fragment程序崩溃
调用Fragment的Activity要继承并实现Fragment.OnFragmentInteractionListener
- soap协议有get方式
今天去面试,被问到了这个问题.一时没想起来.考官的说法是没有 get,使用post 发请求.restful 有get put delete等谓词. 特地查了一下.记在下边. <system.we ...
- Android开发之关于ListView中adapter调用notifyDataSetChanged无效的原因
1.数据源没有更新,调用notifyDataSetChanged无效. 2.数据源更新了,但是它指向新的引用,调用notifyDataSetChanged无效. 3.数据源更新了,但是adpter没有 ...
- apache启动报错(98)Address already in use: make_sock: could not bind to...
# /etc/init.d/httpd startStarting httpd: (98)Address already in use: make_sock: could not bind to ad ...
- 服务器发布MVC常见问题解决方案
1 问题:IIS上部署MVC网站,打开后500错误:处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelin ...
- OOP——UML六种关系
UML定义的关系主要有:泛化.实现.依赖.关联.聚合.组合,这六种关系紧密程度依次加强,分别看一下 泛化 概念:泛化是一种一般与特殊.一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其 ...
- H.264中NALU、RBSP、SODB的关系 (弄清码流结构)
NALU:Coded H.264 data is stored or transmitted as a series of packets known as NetworkAbstraction La ...
- 流媒体相关知识介绍 及其 RTP 应用
一.流媒体简介 随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡.目前在网络上传输音频/视频(Audio/Video,简称A/V)等多媒 ...
- 浏览器兼容——jquery的html()不兼容IE
在看着一个页面A,是一个弹出框,用的jquery中的ajax,然后弹出的内容是另一个Div的.而所出现的问题,是在浏览器中都有弹出框,但是只有谷歌和火狐中的弹出框中内容. 当时,我所想到的是另一个问题 ...
- Oracle行列互换 横表和纵表
/* 在实际使用sql工作中总会碰到将某一列的值放到标题中显示.就是总说的行列转换或者互换. 比如有如下数据: ID NAME KECHENG CHENGJI -- ---------- ------ ...