Spark结构化流阅读Kafka,显示使用“ dropDuplicates”时的超时问题

时间:2018-12-17 13:40:24

标签: apache-kafka spark-structured-streaming drop-duplicates

超时问题在我使用dropDuplicates时发生。

设置如下,

1)Spark结构化流程序从Kafka读取数据

2)由于我需要根据名为id的列对行进行重复数据删除,因此利用Spark Structured Streaming提供的dropDuplicates方法来解决此问题。这是下面的相关代码,

 // df is the original dataframe got from kafka
 val win_data = df.select($"value" cast "string" as "json")
  .select(from_json($"json", schema) as "data")
  .select("data.*")
  .withWatermark("window", "1 hour")
  .dropDuplicates("id", "window")
  .drop("id")

实际上,此代码可以在几天内正常运行。不幸的是,读卡夫卡的超时问题肯定会发生。 如果我只是禁用dropDuplicates这一行,那么一切都会顺利进行。

那么,关于这个问题的一些建议吗?

非常感谢您的帮助。 :)

0 个答案:

没有答案