在Apache Spark中,我们可以使用通过相关函数来共享文件。
本文主要讲解如何在Spark中应用共享文件。
概念
在Apache Spark中,我们可以使用sc.addFile
函数来上传文件。
文件上传后,我们可以在Worker的工作节点中通过SparkFiles.get
函数获取上次文件后的文件路径。
实战
SparkFiles类包含如下两个方法,下面,我们通过一个实例来了解这个函数的功能:
get(filename)
:它可以查询通过SparkContext.addFile()上传的文件的完整路径。
一个Demo如下:
代码语言:javascript复制from pyspark import SparkContext
from pyspark import SparkFiles
finddistance = "/home/hadoop/examples_pyspark/finddistance.R"
finddistancename = "finddistance.R"
sc = SparkContext("local", "SparkFile App")
sc.addFile(finddistance)
print "Absolute Path -> %s" % SparkFiles.get(finddistancename)