我heaving流 Dataframe 和想知道我如何才能消除duplicataes加上只选择最新的modifiedon
行。
比如说。
| 改良的| modifiedon |
| --| ------------ |
| 2019 - 08 - 21 10:00:00| 03/08/2023 |
| 2019 - 08 - 21 10:00:00| 03/08/2023 |
| 2019 - 08 - 21 00:00:00| 02/08/2023 |
| 2019 - 08 - 21 10:00:00| 03/08/2023 |
期望df
| 改良的| modifiedon |
| --| ------------ |
| 2019 - 08 - 21 10:00:00| 03/08/2023 |
| 2019 - 08 - 21 10:00:00| 03/08/2023 |
因此,如果存在idential(100%)相同的行,如id 1,则需要删除所有行,每个ID仅保留1行。而且,如果同一个ID被多次表示(多次更新),我需要根据最大修改的列进行选择。
df = (
spark.readStream
.option("delimiter", ",")
.option("quote", '"')
.option("mode", "permissive")
.option("lineSep", "\r\n")
.option("multiLine", "true")
.format("cloudFiles")
.option("cloudFiles.format", source_format)
.option("cloudFiles.schemaLocation", checkpoint_directory)
.option("header", "false")
.option("escape", '"')
.schema(schema)
.load(data_source)
)
字符串
1条答案
按热度按时间uyto3xhc1#
你可以遵循下面的方法。
下面是我使用的数据。
的数据
字符串
这里,在1天的时间段内,对流数据应用聚合并在列
modifiedon
上执行最大值。输出量:
的