我在主节点中有一个文件,应该由每个节点读取。我怎样才能做到这一点?在Hadoop的MapReduce中,我使用了
DistribuitedCache.getLocalCacheFiles(context.getConfiguration())
Spark如何在节点之间共享文件?我是否必须在RAM和广播变量中加载文件?或者我只能在SparkContext配置中指示(绝对?)文件路径,它是否可以立即用于所有节点?
答案 0 :(得分:0)
您可以使用SparkFiles从分布式缓存中读取文件。
import org.apache.spark.SparkFiles
import org.apache.hadoop.fs.Path
sc.addFile("/path/to/file.txt")
val pathOnWorkerNode = new Path(SparkFiles.get("file.txt"))
答案 1 :(得分:0)
查看spark-submit"文件"参数,例如,这里: