我有一个Spark程序,可以将文本文件中的数据作为RDD读取,并使用spark-sql转换为Parquet文件,并使用单个partitionkey进行分区。偶尔创建一个分区,而不是创建一个分区,而是创建一个分区。
我的数据按日期分区,输出文件夹位于s3:// datalake / intk / parquetdata。
运行Spark作业后,我看到的输出为:
s3://datalake/intk/parquetdata/datekey=102018/a.parquet
s3://datalake/intk/parquetdata/datekey=102118/a.parquet
s3://datalake/intk/parquetdata/datekey=102218/datekey=102218/a.parquet
代码段:
val savepath = "s3://datalake/intk/parquetdata/"
val writeDF = InputDF.write
.mode(savemode)
.partitionBy(partitionKey)
.parquet(savePath)
我在EMR群集版本5.16,Spark版本2.2,Scala版本2.11中运行我的Spark作业,并且输出位置是s3。我不确定为什么会发生这种行为,并且在任何模式下都看不到此问题,并且该分区偶尔会发生一次。