Spark结构化流-未聚合数据上的水印

时间:2020-04-13 10:58:41

标签: apache-spark spark-structured-streaming watermark

我正在尝试从结构化流数据集中删除最新数据。

使用spark的withWatermark功能无济于事,最新数据也不会丢失。

我的数据集在事件时间列上没有聚合,因此这可能是原因,根据火花internals,水印用于状态管理,但是我想将其用于丢弃最新数据。 / p>

还有其他方法可以强制火花尊重水印吗?

在日志中,我看到应用了水印(我在发送数据以更新水印之前):

"eventTime" : {
"avg" : "2020-04-08T14:10:01.532Z",
"max" : "2020-04-12T02:10:01.532Z",
"min" : "2020-04-05T02:10:01.532Z",
"watermark" : "2020-04-09T02:00:01.532Z"
}

但旧事件仍会写入结果中。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我在文档中看到它不能保证Spark会丢弃旧数据。Here is the snapshot of official document