запись фрейма данных pandas (.csv) в локальную систему или hdfs с помощью spark в режиме кластера

#python #apache-spark

#python #apache-spark

Вопрос:

Я пытаюсь записать фрейм данных pandas в локальную систему или в hdfs с помощью spark в режиме кластера, но он выдает ошибку типа

 IOError: [Errno 2] No such file or directory: {hdfs_path/file_name.txt}
  

Вот как я пишу

 df.to_csv("hdfs_path/file_name.txt", sep="|")
  

Я использую python, и задание выполняется через сценарий оболочки.

Это отлично работает, если я нахожусь в локальном режиме, но не в режиме yarn-cluster.

Любая поддержка приветствуется и заранее благодарна.

Ответ №1:

У меня такая же проблема, я всегда конвертирую фрейм данных в фрейм данных spark перед созданием файла в файловой системе Apache Spark :

 df_sp = spark.createDataFrame(df_pd)
df_sp.coalesce(1).write.csv("my_file.csv", mode='overwrite', header = True)