0

データフレームを列で分割された CSV ファイルとして保存しようとしています。

val schema = new StructType(
      Array(
        StructField("ID",IntegerType,true),
        StructField("State",StringType,true),
        StructField("Age",IntegerType,true)
      )
)

val df = sqlContext.read.format("com.databricks.spark.csv")
        .options(Map("path" -> filePath).schema(schema).load()

df.write.partitionBy("State").format("com.databricks.spark.csv").save(outputPath)

ただし、出力はパーティション情報とともに保存されません。partitionBy は完全に無視されたようです。エラーはありませんでした。寄木細工のフォーマットで同じことを試してみるとうまくいきます。

df.write.partitionBy("State").parquet(outputPath)

ここで何が欠けていますか?

4

1 に答える 1

2

partitionByサポートは特定のデータ ソースの一部として実装する必要があり、現在 (v1.3) では Spark CSV ではサポートされていません。参照: https://github.com/databricks/spark-csv/issues/123

于 2016-02-09T02:59:42.243 に答える