Spark源码定制选择从Spark Streaming入手
这是一个流处理的时代,一切数据如果不是流式的处理或者跟流式的处理不相关的话,都是无效的数据。Spark非常强大的地方在于它的流式处理可以在线的利用机器学习、图计算、Spark SQL或者Spark R的成果,这得益于Spark多元化、一体化的基础架构设计。
Spark Streaming很像是基于Spark Core之上的一个应用程序。不像其他子框架,比如机器学习是把数学算法直接应用在Spark的RDD之上,Spark Streaming更像一般的应用程序那样,感知流进来的数据并进行相应的处理。
瞬间理解Spark Streaming本质
spark streaming:本质上是加上了时间批处理
receiver接收数据以job的形式启动
spark可以启动多个job,互相配合,复杂的job一定是由多个job组合
1.Spark Streaming接收Kafka、Flume、HDFS和Kinesis等各种来源的实时输入数据,进行处理后,处理结果保存在HDFS、Databases等各种地方。
2.Spark Streaming接收这些实时输入数据流,会将它们按批次划分,然后交给Spark引擎处理,生成按照批次划分的结果流。
3.Spark Streaming提供了表示连续数据流的、高度抽象的被称为离散流的DStream。DStream本质上表示RDD的序列。任何对DStream的操作都会转变为对底层RDD的操作。
4.Spark Streaming使用数据源产生的数据流创建DStream,也可以在已有的DStream上使用一些操作来创建新的DStream。
DStream:时空维度,空间维度是操作,把DstreamGraph实例化为RDD Graph
park Streaming的文档:
资料来源于:
DT_大数据梦工厂(Spark发行版本定制)微信公众号:DT_Spark
新浪微博:http://www.weibo.com/ilovepains
如果您对大数据Spark感兴趣,可以免费听由王家林老师每天晚上20:00开设的Spark永久免费公开课,地址YY房间号:68917580
网友评论