spark streaming 异常No output streams registered, so nothing to execute

实现spark streaming demo时,代码:

 1 public static void main (String[] args) {
 2
 3
 4 SparkConf conf = new SparkConf().setAppName("Spark_Streaming").setMaster("local");
 5         JavaSparkContext sc = new JavaSparkContext(conf);
 6         JavaStreamingContext jssc = new JavaStreamingContext(sc, new Duration(2));
 7         JavaSQLContext sqlCtx = new JavaSQLContext(sc);
 8
 9
10         String[] filters = new String[] {"soc"};
11
12         JavaReceiverInputDStream<Status> receiverStream = TwitterUtils.createStream(jssc,filters);
13
14
15
16          jssc.start();
17          jssc.awaitTermination();
18
19 }

运行以上代码会出现异常:No output streams registered, so nothing to execute

原因是当发生输出操作的时候,会触发流计算操作,当在 DStream上没有输出操作或者计算时,通常需要执行某些操作,比如以任意方法:

1 print()
2 foreachRDD(func)
3 saveAsObjectFiles(prefix, [suffix])
4 saveAsTextFiles(prefix, [suffix])
5 saveAsHadoopFiles(prefix, [suffix])

可参考:http://spark.apache.org/docs/latest/streaming-programming-guide.html#output-operations

时间: 2024-10-09 17:27:35

spark streaming 异常No output streams registered, so nothing to execute的相关文章

[java][spark streamming]java.lang.IllegalArgumentException: requirement failed: No output operations registered, so nothing to execute

No output streams registered, so nothing to execute解决原因:没有触发DStream需要的aciton解决方法:使用以下方法之一触发: print() foreachRDD() saveAsObjectFiles() saveAsTextFiles() saveAsHadoopFiles() 原文地址:https://www.cnblogs.com/fadedlemon/p/11738440.html

Spark Streaming DStream的output操作以及foreachRDD详解

一.output操作概览 二.output操作 DStream中的所有计算,都是由output操作触发的,比如print().如果没有任何output操作,那么,压根儿就不会执行定义的计算逻辑. 此外,即使你使用了foreachRDD output操作,也必须在里面对RDD执行action操作,才能触发对每一个batch的计算逻辑.否则,光有foreachRDD output操作,在里面没有对RDD执行action操作,也不会触发任何逻辑. 三.foreachRDD详解通常在foreachRDD

Apache Spark 2.2.0 中文文档 - Spark Streaming 编程指南 | ApacheCN

Spark Streaming 编程指南 概述 一个入门示例 基础概念 依赖 初始化 StreamingContext Discretized Streams (DStreams)(离散化流) Input DStreams 和 Receivers(接收器) DStreams 上的 Transformations(转换) DStreams 上的输出操作 DataFrame 和 SQL 操作 MLlib 操作 缓存 / 持久性 Checkpointing Accumulators, Broadcas

(版本定制)第5课:基于案例分析Spark Streaming流计算框架的运行源码

本期内容: 1.在线动态计算分类最热门商品案例回顾与演示 2.基于案例分析Spark Streaming的运行源码 第一部分案例: package com.dt.spark.sparkstreaming import com.robinspark.utils.ConnectionPoolimport org.apache.spark.SparkConfimport org.apache.spark.sql.Rowimport org.apache.spark.sql.hive.HiveConte

Spark版本定制七:Spark Streaming源码解读之JobScheduler内幕实现和深度思考

本期内容: 1,JobScheduler内幕实现 2,JobScheduler深度思考 摘要:JobScheduler是Spark Streaming整个调度的核心,其地位相当于Spark Core上的调度中心中的DAGScheduler!           一.JobScheduler内幕实现 问:JobScheduler是在什么地方生成的? 答:JobScheduler是在StreamingContext实例化时产生的,从StreamingContext的源码第183行中可以看出:    

spark版本定制五:基于案例一节课贯通Spark Streaming流计算框架的运行源码

本期内容: 1.在线动态计算分类最热门商品案例回顾与演示 2.基于案例贯通Spark Streaming的运行源码 一.在线动态计算分类最热门商品案例回顾与演示 案例回顾: package com.dt.spark.sparkstreaming import com.robinspark.utils.ConnectionPool import org.apache.spark.SparkConf import org.apache.spark.sql.Row import org.apache.

Spark Streaming原理简析

执行流程 数据的接收 StreamingContext实例化的时候,需要传入一个SparkContext,然后指定要连接的spark matser url,即连接一个spark engine,用于获得executor. 实例化之后,首先,要指定一个接收数据的方式,如 val lines = ssc.socketTextStream("localhost", 9999) 1 这样从socket接收文本数据.这个步骤返回的是一个ReceiverInputDStream的实现,内含Recei

版本定制第5课:基于案例一节课贯通Spark Streaming流计算框架的运行源码

本期内容: 1.在线动态计算分类最热门商品案例回顾与演示 2.基于案例贯通Spark Streaming的运行源码 第一部分案例: package com.dt.spark.sparkstreaming import com.robinspark.utils.ConnectionPool import org.apache.spark.SparkConf import org.apache.spark.sql.Row import org.apache.spark.sql.hive.HiveCo

5.Spark Streaming流计算框架的运行流程源码分析2

1 spark streaming 程序代码实例 代码如下: [html] view plain copy object OnlineTheTop3ItemForEachCategory2DB { def main(args: Array[String]){ val conf = new SparkConf() //创建SparkConf对象 //设置应用程序的名称,在程序运行的监控界面可以看到名称 conf.setAppName("OnlineTheTop3ItemForEachCategor