我正在尝试使用以下方法在我的spark应用程序中加载自定义属性: -
command-runner.jar,spark-submit,--deploy-mode,cluster,--properties-file,s3://spark-config-test/myprops.conf,--num-executors,5,--executor-cores,2,--class,com.amazon.Main,#{input.directoryPath}/SWALiveOrderModelSpark-1.0-super.jar
但是,我收到以下异常: -
线程“main”中的异常java.lang.IllegalArgumentException:无效 属性文件's3://spark-config-test/myprops.conf''。在 org.apache.spark.launcher.CommandBuilderUtils.checkArgument(CommandBuilderUtils.java:241) 在 org.apache.spark.launcher.AbstractCommandBuilder.loadPropertiesFile(AbstractCommandBuilder.java:284) 在 org.apache.spark.launcher.AbstractCommandBuilder.getEffectiveConfig(AbstractCommandBuilder.java:264) 在 org.apache.spark.launcher.SparkSubmitCommandBuilder.buildSparkSubmitCommand(SparkSubmitCommandBuilder.java:233) 在组织
这是从S3加载文件的正确方法吗?
答案 0 :(得分:3)
您无法直接从S3加载属性文件。相反,您需要将属性文件下载到某个主节点,然后提交引用该节点上本地路径的spark作业。您可以使用command-runner.jar来运行aws cli实用程序。