Spark Streaming概述
Spark Streaming概述
批处理 & 流处理
为什么需要流处理---更多场景需要
越来越多的应用需要大规模数据下的实时计算能力
1、网站实时运营监控
2、实时舆情分析
Spark Core & RDD本质上是离线运算
val conf=new SparkConf().setAppName("myWordCount")
val sc=new SparkContext(conf)
//读取数据
val lines=sc.textFile(input)
//进行相关计算
val resultRdd=lines.flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_)
//保存结果
resultRdd.saveAsTextFile(output)
park Streaming是什么
Spark Streaming is an extension of the core Spark API that enables scalable, high-throughput, fault-tolerant stream processing of live data streams
Spark Streaming的竞争对手
storm
在Storm中,先要设计一个用于实时计算的图状结构,我们称之为拓扑(topology)。这个拓扑将会被提交给集群,由集群中的主控节点(master node)分发代码,将任务分配给工作节点(worker node)执行。一个拓扑中包括spout和bolt两种角色,其中spout发送消息,负责将数据流以tuple元组的形式发送出去;而bolt则负责转换这些数据流,在bolt中可以完成计算、过滤等操作,bolt自身也可以随机将数据发送给其他bolt。由spout发射出的tuple是不可变数组,对应着固定的键值对。
Spark Streaming vs Storm
- 点赞
- 收藏
- 关注作者
评论(0)