1. Spark Streaming概述

1.1 什么是Spark Streaming

      

      Spark Streaming类似于Apache Storm,用于流式数据的处理。根据其官方文档介绍,Spark Streaming有高吞吐量和容错能力强等特点。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map、reduce、join、window等进行运算。而结果也能保存在很多地方,如 HDFS,数据库等。另外Spark Streaming也能和MLlib(机器学习)以及Graphx完美融合

      

      和Spark基于RDD的概念很相似,Spark Streaming使用离散化流(discretized stream)作为抽象表示,叫作DStream。DStream是随时间推移而收到的数据的序列。在内部,每个时间区间收到的数据都作为RDD存在,而DStream是由这些RDD所组成的序列(因此得名“离散化”)

      

1.2 为什么要学习Spark Streaming 

      1. 易用

      

      2. 容错

      

      3. 易整合到Spark体系

      

1.3 Spark与Storm的对比

Spark

Storm

page7image15235088 page7image15226560

开发语言:Scala

page7image710272

开发语言:Clojure

编程模型:DStream

编程模型:Spout/Bolt

page7image706432
page7image15222816 page7image15231552

      

 

posted on 2019-09-04 04:03  铖歌  阅读(157)  评论(0编辑  收藏  举报