在spark数据集期间创建的空分区写入HDFS

时间:2017-05-05 08:41:13

标签: hadoop apache-spark hdfs

尝试使用write方法将数据集/数据框作为parquets保存到hdfs。 Partions在HDFS中受到限制,但数据空白。我使用Spark版本 - 2.x

dataset.write.mode("append").partitionBy("empNo").format("parquet").save("hdfs path")

dataset.write.mode(SaveMode.Overwrite).save("hdfs path")

请建议

1 个答案:

答案 0 :(得分:1)

我刚检查了一个数据帧。根据您的查询将其分区在单个列上。在输出文件夹内创建了两个分区文件夹,其中包含适当的值。每个文件夹都有一个扩展名为.gz.parquet

的文件

我使用了以下命令:

df.write.mode(SaveMode.Append)
  .partitionBy("column_name")
  .format("parquet")
  .save("hdfs://namenode/output")

我正在使用Spark 1.6,因此无法使用DataSet API进行检查。

我认为在分割数据时可能会出现一些问题。某些分区可能为空。你写的命令很好。