使用 pandas 将 pyspark 数据帧存储到本地文件系统

Storing a pyspark dataframe to local file system using pandas

我有一个 pyspark 数据框,我正在将其转换为 pandas 以将其作为 csv 存储在我的本地文件系统中,但是 pandas 无法识别我的本地文件路径

pandas_df = df.toPandas()
pandas_df.to_csv('/home/dir/my.csv', index=False, encoding='utf-8', sep='|')

我遇到了这个错误FileNotFoundError: [Errno 2] No such file or directory

这是我提交的方式

/usr/bin/spark2-submit --master yarn --deploy-mode cluster <pyspark-file>.py

如果你 运行 作业为 --deploy-mode cluster,驱动程序将 运行ning 在任何由 YARN 管理的机器上,所以如果 to_csv本地文件路径,然后它将输出存储在驱动程序为 运行ning.

的任何机器中
  1. 检查文件路径是否存在于集群中的所有机器上
  2. 检查是否为文件路径授予了适当的权限

否则试试

运行 作为 --deploy-mode client 的作业,因此客户端机器中的驱动程序 运行s,但是步骤 1 和 2 仍然适用于客户端机器