Apache spark 我可以在spark streaming窗口中获取每个时间间隔的数据吗?
代码: 看看上面的代码,间隔时间是1秒,窗口持续时间是3秒,随着时间的推移,窗口中会有3个时间间隔的数据,我可以得到每个时间间隔的数据进行不同的处理吗?与mapPartitions()或mapPartitionsWithIndex()一样,我可以在RDD中处理每个分区Apache spark 我可以在spark streaming窗口中获取每个时间间隔的数据吗?,apache-spark,spark-streaming,Apache Spark,Spark Streaming,代码: 看看上面的代码,间隔时间是1秒,窗口持续时间是3秒,随着时间的推移,窗口中会有3个时间间隔的数据,我可以得到每个时间间隔的数据进行不同的处理吗?与mapPartitions()或mapPartitionsWithIndex()一样,我可以在RDD中处理每个分区 有人知道吗?你能告诉我吗?谢谢大家! window的要点是将窗口持续时间内的所有RDD“组合”到单个RDD中,这样您就可以聚合数据(在内部,它会合并窗口宽度内的RDD)。如果您想在每个时间间隔内单独使用每个RDD,请不要定义窗口并
有人知道吗?你能告诉我吗?谢谢大家! window的要点是将窗口持续时间内的所有RDD“组合”到单个RDD中,这样您就可以聚合数据(在内部,它会合并窗口宽度内的RDD)。如果您想在每个时间间隔内单独使用每个RDD,请不要定义窗口并继续使用
行。然后您可以运行例如lines.foreachRDD(…)
,它将在每个RDD上单独运行窗口的要点是将窗口持续时间内的所有RDD“组合”到单个RDD中,这样您就可以聚合数据(在内部,它在窗口宽度内合并RDD)。如果您想在每个时间间隔内单独使用每个RDD,请不要定义窗口并继续使用行。然后您可以运行例如lines.foreachRDD(…)
,它将分别在每个RDD上运行
val ssc = new StreamingContext(sc,Seconds(1)) //interval time is 1 second
val lines = ssc.socketTextStream(args(0),args(1).toInt,StorageLevel.MEMORY_ONLY_SER)
val wc = lines.window(Seconds(3)) //the windowDuration is 3 seconds.