当我们初始化一个火花流上下文时,我们将使用如下代码:
ssc = StreamingContext(sc, 1)
此处的1为批处理间隔,此处为1秒。这里的批处理间隔的单位是时间(秒)。但我们可以将间隔更改为其他内容吗?例如,文件数量。
就像我们有一个文件夹,会有文件进来,但我们不知道什么时候。我们想要的是,只要有文件,我们就会处理它,所以这里的间隔不是特定的时间范围,我希望它是文件的数量。
我们可以这样做吗?
答案 0 :(得分:2)
那是不可能的。 Spark Streaming基本上在给定的时间间隔内重复执行批处理作业。此外,所有窗口操作也都是基于时间的,因此Spark Streaming中不能忽略时间概念。
在您的情况下,您将尝试以尽可能最短的处理时间优化作业,然后在没有可用的新文件时,只有几个批次包含0个记录。