Spark Streaming概念学习系列之Spark Streaming是什么?(一)
2016-07-31 20:01
417 查看
Spark Streaming通过将流数据按指定时间片累积为RDD,然后将每个RDD进行批处理,进而实现大规模的流数据处理。其吞吐量能够超越现有主流流处理框架Storm,并提供丰富的API用于流数据计算。
Spark Streaming 是一个批处理的流式计算框架。它的核心执行引擎是 Spark,适合处理实时数据与历史数据混合处理的场景,并保证容错性。
Spark Streaming 是构建在 Spark 上的实时计算框架,扩展了 Spark 流式大数据处理能力。 Spark Streaming 将数据流以时间片为单位进行分割形成 RDD,使用 RDD 操作处理每一块数据,每块数据(也就是 RDD)都会生成一个 Spark Job 进行处理,最终以批处理的方式处理每个时间片的数据。请参照下图1。
图 1 [b]Spark Streaming 生成 Job图[/b]
[b]Spark Streaming 编程接口和 Spark 很相似[/b]。在 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 上执行。
欢迎大家,加入我的微信公众号:大数据躺过的坑 免费给分享
同时,大家可以关注我的个人博客:
http://www.cnblogs.com/zlslch/ 和 http://www.cnblogs.com/lchzls/
人生苦短,我愿分享。本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件。 只要你一直关注和呆在群里,每天必须有收获
以及对应本平台的QQ群:161156071(大数据躺过的坑)
相关文章推荐
- Spark Streaming概念学习系列之SparkStreaming运行原理
- Spark Streaming概念学习系列之Spark Streaming 架构(二)
- Spark 概念学习系列之Apache Spark是什么?(一)
- Spark Tachyon概念学习系列之Spark Tachyon是什么?(一)
- Spark Streaming概念学习系列之Spark Streaming容错
- Spark GraphX概念学习系列之Spark GraphX是什么?(一)
- Spark Streaming概念学习系列之SparkStreaming的高层抽象DStream
- Spark Streaming概念学习系列之Spark Streaming的竞争对手
- Spark 概念学习系列之Spark给我们带来了什么惊喜?(三)
- 第128课: Spark Streaming源码经典解读系列之三:JobScheduler工作内幕源
- 第127课: Spark Streaming源码经典解读系列之二:Spark Streaming生成RDD
- Spark入门实战系列--7.Spark Streaming(上)--实时流计算Spark Streaming原理介绍
- Spark Streaming(上)--实时流计算Spark Streaming原理介绍
- spark-streaming系列------- 4. Spark-Streaming Job的生成和执行
- spark-streaming系列------- 3. Kafka DirectDStream方式数据的接收
- 第130课: Spark Streaming源码经典解读系列之五:Receiver工作内幕源码解密
- 第132课: Spark Streaming源码经典解读系列之七:Executro容错工作内幕源码解密
- Spark Streaming揭秘 Day30 集群模式下SparkStreaming日志分析
- Spark入门实战系列--7.Spark Streaming(下)--实时流计算Spark Streaming实战
- Spark入门实战系列 (做个标签,转载基于 ELK Stack 和 Spark Streaming 的日志处理平台设计与实现)