私はkafkaとsparkのために新しく、いくつかカウントしようとしていますが、成功していません!問題の詳細は次のとおりです。ありがとう! belowsのようKafka + Java + SparkStreaming + reduceByKeyAndWindow throw例外:org.apache.spark.SparkException:タスクがシリアライズできません。
コード:スレッド "スレッド3" org.apache.spark.SparkExceptionで
例外:belowsのよう
JavaPairDStream<String,Integer> counts = wordCounts.reduceByKeyAndWindow(new AddIntegers(), new SubtractIntegers(), Durations.seconds(8000), Durations.seconds(4000));
例外 org.apacheにシリアライズしないタスク .spark.util.ClosureCleaner $ .ensureSerializable(ClosureCleaner.scala:166) ( )org.apache.spark.util.ClosureCleaner $ .clean(ClosureCleaner.scala:158) at org.apache.spark.SparkContext.clean SparkContext.scala:1623) org.apache.spark.streaming.dstream.PairDStreamFunctions.reduceByKeyAndWindow(PairDStreamFunctions.scala時:333) org.apache.spark.streaming.dstream.PairDStreamFunctions.reduceByKeyAndWindow(PairDStreamFunctions.scalaにおいて:299 ) でorg.apache.spark.streaming.api.java.JavaPairDStream.reduceByKeyAndWindow(JavaPairDStream.scala:352) KafkaAndDstreamWithIncrement.KDDConsumer.run(KDDConsumer.java:110) に起因する:java.io.NotSerializableException: KafkaAndDstreamWithIncrement.KDDConsumer
私たちに 'addIntegers'と' subtractIntegers'を表示してください。 –
アドバイスありがとうございます!以前は、私はいつも "reduceBykeyAndWindowをオーバーライドする方法"について書いていました。しかし、今私はおそらくaddIntgersとsubractIntegersで間違っていることがわかります。私は試して、そして成功しました、もう一度ありがとう! –