gcloud dataproc jobs submit spark \
--cluster=cluster \
--region=region \
--files=config.txt \
--class=class \
--jars=gs://abc.jar
字符串
我们需要访问驱动节点上的xml.txt文件。我如何访问驱动节点上的xml.txt文件,以及如何获取xml.txt文件的存储路径。
在HDFS世界中,使用类似的--files选项,我可以使用java.io.File(“java.txt”)访问驱动程序中的文件
3条答案
按热度按时间bfrts1fy1#
我无法轻松访问gcp帐户进行测试(对此我很抱歉),但您可以尝试
org.apache.spark.SparkFiles.get(String filename)
类方法来访问文件的绝对路径。文档:https://spark.apache.org/docs/latest/api/java/index.html?org/apache/spark/SparkFiles.html
希望能帮上忙。再见。
hlswsv352#
Dataproc将驱动进程的当前(工作)目录设置为一个临时目录。通过
--files
标志提供的文件将在该目录中可用。例如(list-dir.py):
字符串
然后运行
型
您可以看到
test.json
位于Spark驱动程序进程的当前目录中。wbrvyc0a3#
这个问题有点晚,但可能对某人有帮助:
由于您通过
--files
传递了config.txt
,因此您可以在驱动程序节点中非常轻松地访问它:字符串
如果您希望在作业的每个节点中都可以访问该文件,则可以通过在驱动程序节点中运行
sc.addFile("config.txt")
来添加它,然后通过SparkFiles.get("config.txt")
在任何节点上访问它。HTH