oozie属性文件,以一个列表作为单个键的值。

问题描述 投票:0回答:1

我有一个火花应用程序,我运行的命令是

/usr/hdp/spark2-client/bin/spark-submit \
  --name 'App' \
  --class 'someFolder.SomeApp \
  --master "yarn" \
  --deploy-mode "cluster" \
  --num-executors 4 \
  --executor-cores 3 \
  --executor-memory 4g \
  --conf spark.sql.shuffle.partitions=10 \
  --conf spark.default.parallelism=10 \
  --files 'hdfs:///file1','hdfs:///file2' \
  'assembly-0.25.0-3-ge05360d.jar' \
  'param1' 'param2'

但现在我想在ozie中运行它。我的问题是--我怎样才能表示这样的参数呢?--files 那是一个文件列表,在 job.properties 文件?

apache-spark oozie
1个回答
1
投票

如果你通过ozie动作shell运行,那么。

<file>hdfs:///file1#file1</file>
<file>hdfs:///file2#file2</file>

0
投票

有一个方法可以做到这一点,那就是把所有这些都放在一个shell脚本中,然后调用shell脚本(从ozie)来启动spark应用(当然要把shell脚本移到一些hdfs的位置)。

使用此链接将文件复制到容器中。https:/stackoverflow.coma223959181416616。

如果上面的方法不奏效,-files 'hdfs:/file1','hdfs:/file2'在shell脚本中应该是有效的。

在您的火花应用日志中 始终 查看容器的内容,以确保所需的文件被复制到容器中。

给它一个尝试。

© www.soinside.com 2019 - 2024. All rights reserved.