spark dataframe高效率去重
时间: 2023-10-13 19:05:06 浏览: 217
Spark DataFrame 去重有多种方式,以下是一些常用的高效率去重方法:
1. dropDuplicates:使用该方法可以删除 DataFrame 中的重复数据,该方法默认去重所有列。示例代码如下:
```
val df = spark.read.csv("path to csv")
val distinctDF = df.dropDuplicates()
```
2. distinct:该方法可以去重指定列的数据,相比于 dropDuplicates 方法更加灵活。示例代码如下:
```
val df = spark.read.csv("path to csv")
val distinctDF = df.select("col1", "col2").distinct()
```
3. agg + groupBy:使用 agg 函数和 groupBy 函数可以去重指定列的数据,该方法比较灵活,可以进行更多的聚合计算。示例代码如下:
```
val df = spark.read.csv("path to csv")
val distinctDF = df.groupBy("col1", "col2").agg(max("col3"))
```
以上是几种常用的高效率去重方法,具体使用哪种方法取决于数据的具体情况和需求。
阅读全文