У меня есть структура каталогов на основе двух разделов, например:
People
> surname=Doe
> name=John
> name=Joe
> surname=White
> name=Josh
> name=Julien
Я читаю паркетные файлы с информацией только обо всех. И поэтому я напрямую, указав surname = Doe как выходной каталог для моего DataFrame. Теперь проблема заключается в том, что я пытаюсь добавить разбиение на основе имен с partitionBy("name")
при записи.
df.write.partitionBy("name").parquet(outputDir)
(outputDir содержит путь к директории Doe)
Это вызывает ошибку, как показано ниже:
Caused by: java.lang.AssertionError: assertion failed: Conflicting partition column names detected:
Partition column name list #0: surname, name
Partition column name list #1: surname
Любые советы по его решению? Вероятно, это происходит из-за файла _SUCCESS
, созданного в каталоге фамилии, который дает неправильные подсказки Spark - при удалении файлов _SUCCESS
и _metadata
Spark может читать все без каких-либо проблем.