我一直在尝试通过 pyspark 执行脚本 .py 但我一直收到此错误:
11:55 $ ./bin/spark-submit --jars spark-cassandra-connector-2.0.0-M2-s_2.11.jar --py-files example.py
Exception in thread "main" java.lang.IllegalArgumentException: Missing application resource.
at org.apache.spark.launcher.CommandBuilderUtils.checkArgument(CommandBuilderUtils.java:241)
at org.apache.spark.launcher.SparkSubmitCommandBuilder.buildSparkSubmitArgs(SparkSubmitCommandBuilder.java:160)
at org.apache.spark.launcher.SparkSubmitCommandBuilder.buildSparkSubmitCommand(SparkSubmitCommandBuilder.java:276)
at org.apache.spark.launcher.SparkSubmitCommandBuilder.buildCommand(SparkSubmitCommandBuilder.java:151)
at org.apache.spark.launcher.Main.main(Main.java:86)
我可以通过这样做轻松地执行它:
11:57 $ pyspark --jars spark-cassandra-connector-2.0.0-M2-s_2.11.jar
然后将代码逐 block 粘贴到 IPython
(交互式 shell)中。但我想把脚本放在一个 cronjob 中,这样它就可以自动执行。我需要一个命令来放入 cronjob,而 spark-submit
不工作。有什么想法吗?
最佳答案
需要再把python文件放在最后面。
./bin/spark-submit --jars spark-cassandra-connector-2.0.0-M2-s_2.11.jar --py-files example.py example.py
关于python - 在 pyspark 中运行脚本时缺少应用程序资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43912289/