gpt4 book ai didi

apache-spark - SparkContext.addFile 将文件上传到驱动节点而不是工作节点

转载 作者:行者123 更新时间:2023-12-05 07:33:38 27 4
gpt4 key购买 nike

我尝试在集群上运行 sc.texfile("file:///.../myLocalFile.txt"),但出现了 java.io.FileNotFoundException在 worker 身上。

所以我用谷歌搜索并找到了 sc.addFile/SparkFiles.get 来将文件上传给每个工作人员。

这是我的代码:

sc.addFile("file:///.../myLocalFile.txt")
val input = sc.textFile(SparkFiles.get("myLocalFile.txt"))

我看到驱动程序节点将文件上传到 /tmp 中的目录,然后我的工作人员得到了 FileNotFoundException,因为:

  1. 我没有看到任何打印输出表明工作人员已经下载了他们应该下载的文件
  2. 他们尝试使用驱动程序的路径访问文件。所以我假设 SparkFiles.get() 在驱动程序节点上运行,而不是在工作节点上运行(我通过添加 println 确认)。

我尝试使用 spark-submit --files 选项,我看到了完全相同的问题。

那我做错了什么?我只想在集群上 sc.textFile()

最佳答案

您需要将 worker 上的文件复制到与驱动程序相同的路径,或者使用 hdfs,因为它在 worker 上可用。 worker 没有这些文件你可以去文件夹看看你自己,我会 scp 它们

关于apache-spark - SparkContext.addFile 将文件上传到驱动节点而不是工作节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50507317/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com