У меня есть программа Spark, которая считывает данные из текстового файла в виде RDD и преобразует их в файл Parquet с помощью spark-sql и разбивает на разделы с помощью одной клавиши ключа.Время от времени вместо создания одного раздела он создает два раздела, которые являются разделами внутри раздела.
Мои данные разбиты на разделы по дате и выходная папка находится в 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)
Я запускаю задание Spark в кластере EMR версии 5.16,Spark версии 2.2, Scala версии 2.11 и место выхода s3.Я не уверен, почему это происходит, и я не вижу этой проблемы, следуя какой-либо схеме, и этот раздел возникает только время от времени.