SparkStreaming

StreamingContext:`

def this(sparkContext: sparkContext, batchDuration: Duration) ={
	  this(sparkContext, null, batchDuration)
}
def this(conf: SparkConf, batchDuration: Duration) ={
	  this(StreamingContext.createNewSparkContext(conf), null, batchDuration)
}

这里是StreamingContext源码
1.只要一个context启动了,就没办法再启动一个新的steaming computation
2.只要context被停止,就不能重新启动它了
3.一个jvm中只能有一个steamingcontext被运行在同一时间里
4.streaming的stop()能停止sparkcontext,如要只要停止streamingcontext则可以通过设置stopSparkContext为false
batch interval根据应用程序需求的延迟要求以及集群可用的资源情况来设置。

DStreams(Discretized Streams)
表示一系列的,持续不断的RDD,一个DStream包含多个RDD
在一定的间隔每个RDD都包含数据
对DStream操作算子,比如map/flatMap,底层会被翻译为对DStream中的每个RDD都做map/flatMap。

Input DStreams and Receivers
每一个input DStream都需要关联一个Receivers,用来接收并保存在spark内存中,进行处理,除了文件系统中的数据。

updataStateByKey算子
统计到目前为止累计出现的单词的个数(保持以往的状态)

window:定时的进行一个时间段内的数据处理
window length:窗口的长度
sliding interval:滑动间隔
这两个参数需要和我们的batch size成倍数关系
每隔多久计算某个范围内的数据:每隔10秒计算前10分钟的wc
===>每隔sliding interval统计前window length的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值