如何查询Spark JobServer并找到它存储我的Jars的位置?

时间:2016-08-12 16:02:43

标签: spark-jobserver

我正在尝试遵循此文档:

https://github.com/spark-jobserver/spark-jobserver#dependency-jars

选项2在文档中列出:

  

dependent-jar-uris也可用于作业配置参数   提交工作时。在ad-hoc上下文中,这具有相同的效果   as dependent-jar-uris context配置参数。坚持不懈   上下文将为当前作业加载jar,然后为每个作业加载   将在持久化上下文上执行的作业。卷曲-d“”   '本地主机:8090 /上下文/测试上下文NUM-CPU核芯= 4和;存储器每次节点=512米?   好吧卷曲   '?本地主机:8090 /作业APPNAME =试验&安培; CLASSPATH = spark.jobserver.WordCountExample&安培;上下文=测试上下文与同步=真'   -d'{dependent-jar-uris = [“file:///myjars/deps01.jar”,“file:///myjars/deps02.jar”],input.string =“a b c a b see”}'   jars /myjars/deps01.jar& /myjars/deps02.jar(仅出现在SJS上   节点)将被加载并可用于Spark驱动程序&   执行者。

“file:/// myjars /”目录是SJS节点的JAR目录还是某个自定义目录?

我在Windows机器上有一个客户端,在Linux机器上有一个Spark JobServer。接下来,我将JAR上传到SJS节点。 SJS节点将Jar放在某个地方。然后,当我调用启动Job并设置'dependent-jar-uris'时,SJS节点将找到我之前上传的JAR并运行该作业:

“dependent-jar-uris”设置为“file:///tmp/spark-jobserver/filedao/data/simpleJobxxxxxx.jar”

这很好用,但我不得不手动搜索SJS节点以找到这个位置(例如file:///tmp/spark-jobserver/filedao/data/simpleJobxxxxxx.jar)然后将它添加到我的未来要求开始工作。

相反,如何从客户端进行REST调用,以便在我上传它们时获取Spark JobServer放置我的jar的路径,以便我可以在我的'中正确设置文件:///路径依赖jar-uris的属性动态?

1 个答案:

答案 0 :(得分:0)

我不认为上传的罐子使用" POST / jars"可以用于依赖jar-uris。由于您正在上传jar,因此您已经知道了本地路径。只需使用它。