Скажем, у меня есть Spark DataFrame, который я хочу сохранить как CSV файл. После Spark 2.0.0 класс DataFrameWriter напрямую поддерживает сохранение его как файла CSV.
Поведение по умолчанию - сохранить вывод в нескольких файлах part - *.csv внутри предоставленного пути.
Как мне сохранить DF с помощью
- Отображение пути к точному имени файла вместо папки
- Заголовок доступен в первой строке
- Сохранить как один файл вместо нескольких файлов.
Один из способов борьбы с ним - объединить DF, а затем сохранить файл.
df.coalesce(1).write.option("header", "true").csv("sample_file.csv")
Однако это имеет недостаток в сборе его на мастер-машине и требует наличия мастера с достаточной памятью.
Можно ли написать один CSV файл без использования coalesce? Если нет, существует ли эффективный способ, чем приведенный выше код?