Spark学习笔记:StreamingContext详解

本文详细介绍了Spark Streaming中的核心组件StreamingContext的创建方式、启动流程及注意事项。包括通过SparkContext创建StreamingContext,设置批处理间隔,以及必须的DStream操作如transformation和output算子。同时强调了start(), awaitTermination()和stop()方法的使用时机,以及对多个StreamingContext和SparkContext管理的规则。" 101444337,7380375,iView Input组件去除边框CSS解决方案,"['前端开发', 'Vue', 'CSS', 'iView组件', 'HTML']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SreamingContext详解

1.创建StreamingContext的方式

创建StreamingContext的方式有两种

val conf=new SparkConf().setAppName(appName).setMaster(master);
val ssc=new StreamingContext(conf,Seconds(1));

还可以通过已有的SparkContext来创建

val sc=new SparkContext(conf)
val ssc=new StreamingContext(sc,Seconds(1));

参数解析
appName:是用来在Spark UI上显示的应用名称
master:是一个Spark、Mesos或者Yarn集群的URL,或者是local[*],星号代表需要使用CPU的核心数
batch interval:根据应用程序的延迟要求以及可用的集群资源来设置

2.定义StreamingContext之后必须要做的事

(1)通过创建输入DStream来创建输入数据源
(2)通过对DStream定义transformation和output算子操作,来定义实时计算逻辑
(3)调用StreamingContext的start()方法,来开始实时处理数据
(4)调用StreamingContext的awaitTermination()方法,来等待应用程序的终止
(5)也可以调用StreamingContext的stop()方法,来停止应用程序

3.注意要点

(1)只要一个StreamingContext启动之后,就不能再往其中添加任何计算逻辑了
(2)一个StreamingContext停止之后,是肯定不能够重启的,调用stop()之后不能再调用start(),否则会报StreamingContext has already been stopped的异常
(3)一个JVM同时只能有一个StreamingContext启动,在Spark应用程序中不能创建两个StreamingContext
(4)调用stop()方法时,会同时停止内部的SparkContext,如果还希望后面继续使用SparkContext创建其他类型的Context,则需要使用stop(false)
(5)一个SparkContext可以创建多个StreamingContext,只要上一个先用stop(false)停止,再创建下一个即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值