集群上的 Dask 程序 运行 中找不到文件错误

File Not Found Error in Dask program run on cluster

我有 4 台机器,M1、M2、M3 和 M4。 M1 上的调度器、客户端、worker 运行s。我在 M1 中放了一个 csv 文件。其余的机器是工人。

当我 运行 程序在 dask 中有 read_csv 文件。它给我错误,找不到文件

当您的一名工作人员尝试加载 CSV 文件时,它将无法找到它,因为它不在该本地磁盘上。这应该不足为奇。您可以通过多种方式解决此问题:

  • 复制文件给每个worker;这在盘space上显然是浪费,但最容易实现
  • 将文件放在网络文件系统上(NFS 挂载、gluster、HDFS 等)
  • 将文件放在亚马逊 S3 等外部存储系统上并引用该位置
  • 在您的本地进程中加载​​数据并使用 scatter 进行分发;在这种情况下,大概数据足够小以适合内存并且可能 dask 不会为你做太多。