在EMR Spark应用程序中加载道具文件

时间:2017-11-28 15:39:50

标签: apache-spark emr amazon-data-pipeline

我正在尝试使用以下方法在我的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加载文件的正确方法吗?

1 个答案:

答案 0 :(得分:3)

您无法直接从S3加载属性文件。相反,您需要将属性文件下载到某个主节点,然后提交引用该节点上本地路径的spark作业。您可以使用command-runner.jar来运行aws cli实用程序。