触发器如何在Spark结构化流中工作?

时间:2019-06-26 10:08:32

标签: apache-spark spark-structured-streaming

我在触发间隔https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#triggers

上浏览了结构化的流式文档

在将数据发布到kafka时,我使用触发间隔为30秒

val query = dfToWriteInKafka.writeStream

  .queryName("kafkaWriter")
  .format("kafka")
  .outputMode("append")
  .trigger(Trigger.ProcessingTime(30000))
  .option("kafka.bootstrap.servers", bootstrapServers)
  .option("topic", topicName)
  .option("checkpointLocation", config.getString("job.checkpoint"))
  .start()

我看到对于前几次运行,微间歇时间间隔不是30秒。对于以后的运行,它会在30秒时触发批次。

我想了解它如何决定在第一次运行中选择多少条记录。我知道我已经指定了检查点位置,但是为什么前两次运行的触发间隔不同?

此外,spark是如何决定在第一次运行中选择多少条记录的?

Structured Streaming trigger intervals

0 个答案:

没有答案