因此,我尝试使用spark-submit
在cluster
模式下在AWS EMR上运行Apache Spark
应用程序。使用--jar
和--driver-class-path
选项,它可以很好地工作。我所需的所有依赖关系jar都位于EMR所需的S3
桶中。为此,我在EMR AWS控制台上的EMR添加步骤选项中使用以下命令:
--class org.springframework.boot.loader.JarLauncher --jars s3://emrb/gson-2.8.4.jar --driver-class-path s3://emrb/gson-2.8.4.jar
现在,我在add step
的spark-submit options
区域提供了这个选项。但是如果我想用同样的方式提供多个依赖的jar,它不会占用其他的jar。我提供了下面的方式,并且尝试了各种选项,但是它找不到依赖的jar:
--jars s3://emrb/hadoop_jars/emrfs-hadoop-assembly-2.32.0.jar,s3://emrb/gson-2.8.4.jar --driver-class-path s3://emrb/hadoop_jars/emrfs-hadoop-assembly-2.32.0.jar,s3://emrb/gson-2.8.4.jar --class org.springframework.boot.loader.JarLauncher
2条答案
按热度按时间ukqbszuj1#
您可以在单独的json文件中指定steps参数:
其中steps.json包含如下内容:
zour9fqk2#
您可以在spark-defaults中添加jar文件。如果jar列表中有多个条目,请用途:作为分离器。
您应该用途:
--驱动程序类路径s3://emrb/hadoop_jar/emrfs-hadoop-程序集-2.32.0.jar:s3://emrb/gson-2.8.4.jar