在pyspark中随时间窗口放置副本

在pyspark中随时间窗口放置副本,pyspark,spark-streaming,Pyspark,Spark Streaming,我在spark中有一个来自卡夫卡主题的流式数据帧,我想在每次解析新记录时删除过去5分钟内的重复数据 我知道dropDuplicates([“uid”])函数,只是不知道如何在特定的历史时间间隔内检查重复项 我的理解是: df = df.dropDuplicates(["uid"]) 要么处理当前(微)批中读取的数据,要么处理当前内存中的“任何内容”。 是否有一种方法可以使用数据中的“timestamp”列设置此重复数据消除的时间 提前谢谢 df\ .withWatermark("event

我在spark中有一个来自卡夫卡主题的流式数据帧,我想在每次解析新记录时删除过去5分钟内的重复数据

我知道dropDuplicates([“uid”])函数,只是不知道如何在特定的历史时间间隔内检查重复项

我的理解是:

df = df.dropDuplicates(["uid"])
要么处理当前(微)批中读取的数据,要么处理当前内存中的“任何内容”。 是否有一种方法可以使用数据中的
“timestamp”
列设置此重复数据消除的时间

提前谢谢

df\
  .withWatermark("event_time", "5 seconds")\
  .dropDuplicates(["User", "uid"])\
  .groupBy("User")\
  .count()\
  .writeStream\
  .queryName("pydeduplicated")\
  .format("memory")\
  .outputMode("complete")\
  .start()
有关更多信息,请参考:,