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