[英]Can we create “record count” based window in spark streaming?
我需要根据JavaDstream的上一个和下一个元素进行计算。 但是,为了访问这些内容,我需要基于记录计数创建一个滑动窗口。
JavaStreamingContext javaStreamingContext = createSteamingContext(settings);
JavaPairInputDStream<String, String> pivotedKafkaData = KafkaSource.getStream(javaStreamingContext, settings);
JavaDStream<VoyageData> voyageData = pivotedKafkaData.map(Tuple2::_2)
.map(StreamProcessor::getStandardizedRecords)
.map(Functions::getVoyageDataRecords);
JavaDStream<VoyageData> windowedVoyageData = voyageData.window(Durations.seconds(4),Durations.seconds(4));
在我的代码中,我创建了一个基于时间的窗口,现在的问题是,如何从中访问上一个,当前和下一个记录。
您可以使用updateStateByKey(func)转换进行全状态转换,以更好地了解github示例和博客下的结帐信息
https://github.com/phalodi/stateful-wordcount-spark
http://www.spark.tc/stateful-spark-streaming-using-transform/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.