我正在运行Java代码,使用spark submit中的Spark群集模式将文件从HDFS复制到本地。 作业运行正常,火花本地但在集群模式下失败。 它抛出一个java.io.exeception:Target / mypath /是一个目录。
我不明白为什么群集失败了。但我没有在当地收到任何例外情况。
答案 0 :(得分:0)
这种行为是因为在第一种情况(本地)中,您的驱动程序与运行整个Spark作业的同一台机器。在第二种情况(集群)中,您的驱动程序将发送给您的一个工作人员并从那里执行该过程。
通常,当您希望将Spark作业作为集群模式运行并且需要预处理本地文件(如JSON,XML等)时,您需要使用以下句子{{{{{{ 1}}。然后在您的驱动程序中,您将能够看到该特定文件。如果要包含多个文件,请用逗号--files <myfile>
分隔。
当您想要添加一些jar依赖项时,方法是相同的,您需要使用(,)
。
有关详细信息,请查看this thread。