Spark DataFrame 通过 GroupBy 删除重复项先保留

Spark DataFrame Removing duplicates via GroupBy keep first

我正在使用 groupBy 函数从 spark DataFrame 中删除重复项。对于每个组,我只想取第一行,这将是最新的。

我不想执行 max() 聚合,因为我知道结果已经存储在 Cassandra 中并希望避免不必要的计算。使用 pandas 查看 this approach,这正是我想要的,除了在 Spark 中。

df = sqlContext.read\
            .format("org.apache.spark.sql.cassandra")\
            .options(table="table", keyspace="keyspace")\
            .load()\
            .groupBy("key")\
            #what goes here?

只需 dropDuplicates 即可。

尝试df.dropDuplicates(Seq("column")).show

查看此 了解更多详情。