以固定间隔处理 JavaDStream

Processing JavaDStream at fixed intervals

我正在使用 Apache Spark 构建流学习应用程序。我的应用程序需要定期处理流数据,但在这些时间间隔之前或之后,它可以让它通过而不进行任何处理。所以,我对所有的流项目不感兴趣,但其中一些在某些特定的时间间隔出现(至少对于训练部分)我无法弄清楚如何在忽略流的同时只处理一些 windows其他

如果消息包含时间戳,解决此问题的一种方法是过滤与预期间隔匹配的 'interesting' 消息,并将这些消息传递给 Spark 进行处理。

val dstream = ???
val targetStream = dstream.filter(msg => withinInterval(timestamp(msg))}
targetStream.forEachRDD(rdd => // do something with the filtered elements)