1

データフレームから空のパーティションを削除する必要があります

2 つのデータフレームがあり、どちらも sqlContext を使用して作成されます。そして、データフレームは以下のように構築され、結合されます

import org.apache.spark.sql.{SQLContext}

val sqlContext = new SQLContext(sc)

// Loading Dataframe 1
val csv1 = "s3n://xxxxx:xxxxxx@xxxx/xxx.csv"
val csv1DF = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load(csv1) 

// Loading Dataframe 2
val csv2 = "s3n://xxxxx:xxxxxx@xxxx/xxx.csv"
val csv2DF = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load(csv1) 

// Combining dataframes 
val combinedDF = csv1.
                join(csv2 csv1("column_1") === csv2("column_2"))

これで、結合DFのパーティション数は200です。ここから、結合を使用する場合のデフォルトのパーティション数は200であることがわかります。

場合によっては、データフレーム/csv が大きくなく、多くの空のパーティションが取得され、コードの後半部分で問題が発生することがあります。

では、作成されたこれらの空のパーティションを削除するにはどうすればよいですか?

4

1 に答える 1