Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark oozie spark操作-如何指定spark选项_Apache Spark_Oozie - Fatal编程技术网

Apache spark oozie spark操作-如何指定spark选项

Apache spark oozie spark操作-如何指定spark选项,apache-spark,oozie,Apache Spark,Oozie,我通过oozie spark action在Thread客户端模式下运行spark作业。我需要指定与驱动程序和应用程序主控程序相关的设置。我尝试按照oozie的文档配置spark选项,但它不起作用 以下是oozie doc提供的信息: Example: <workflow-app name="sample-wf" xmlns="uri:oozie:workflow:0.1"> ... <action name="myfirstsparkjob">

我通过oozie spark action在Thread客户端模式下运行spark作业。我需要指定与驱动程序和应用程序主控程序相关的设置。我尝试按照oozie的文档配置spark选项,但它不起作用

以下是oozie doc提供的信息:

Example:

<workflow-app name="sample-wf" xmlns="uri:oozie:workflow:0.1">
    ...
    <action name="myfirstsparkjob">
        <spark xmlns="uri:oozie:spark-action:0.1">
            <job-tracker>foo:8021</job-tracker>
            <name-node>bar:8020</name-node>
            <prepare>
                <delete path="${jobOutput}"/>
            </prepare>
            <configuration>
                <property>
                    <name>mapred.compress.map.output</name>
                    <value>true</value>
                </property>
            </configuration>
            <master>local[*]</master>
            <mode>client<mode>
            <name>Spark Example</name>
            <class>org.apache.spark.examples.mllib.JavaALS</class>
            <jar>/lib/spark-examples_2.10-1.1.0.jar</jar>
            <spark-opts>--executor-memory 20G --num-executors 50</spark-opts>
            <arg>inputpath=hdfs://localhost/input/file.txt</arg>
            <arg>value=2</arg>
        </spark>
        <ok to="myotherjob"/>
        <error to="errorcleanup"/>
    </action>
    ...
</workflow-app>
在实际的驱动程序jvm中未设置上述与驱动程序相关的设置。我在linux进程信息上验证了它

参考资料:

尝试将
本地[*]
更改为
纱线

尝试将
本地[*]
更改为
纱线

——执行器内存20G
应能正常工作

此外,请尝试使用:

<master>yarn-cluster</master>
<mode>cluster</mode>
——执行器内存20G
应能正常工作

此外,请尝试使用:

<master>yarn-cluster</master>
<mode>cluster</mode>

我确实发现了问题所在。在Thread客户端模式下,您不能使用
--driver memory 10g
指定与驱动程序相关的参数,因为您的驱动程序(oozie launcher作业)已在该点之前启动。它是一个oozie启动器(这是一个mapreduce作业)启动您的实际spark和任何其他作业,对于该作业,spark选项是相关的。但要在Thread客户端模式下设置驱动程序参数,您需要在oozie工作流中基本配置
配置

<configuration>
               <property>
                        <name>oozie.launcher.mapreduce.map.memory.mb</name>
                        <value>8192</value>
                </property>
                <property>
                        <name>oozie.launcher.mapreduce.map.java.opts</name>
                        <value>-Xmx6000m</value>
                </property>
                <property>
                        <name>oozie.launcher.mapreduce.map.cpu.vcores</name>
                        <value>24</value>
                </property>
                <property>
                    <name>mapreduce.job.queuename</name>
                    <value>default</value>
                </property>
            </configuration> 

oozie.launcher.mapreduce.map.memory.mb
8192
oozie.launcher.mapreduce.map.java.opts
-Xmx6000m
oozie.launcher.mapreduce.map.cpu.vcores
24
mapreduce.job.queuename
违约

我还没有尝试过纱线簇模式,但spark选项可能适用于驾驶员设置。但我的问题是关于纱线客户端模式。

我确实发现了问题所在。在Thread客户端模式下,您不能使用
--driver memory 10g
指定与驱动程序相关的参数,因为您的驱动程序(oozie launcher作业)已在该点之前启动。它是一个oozie启动器(这是一个mapreduce作业)启动您的实际spark和任何其他作业,对于该作业,spark选项是相关的。但要在Thread客户端模式下设置驱动程序参数,您需要在oozie工作流中基本配置
配置

<configuration>
               <property>
                        <name>oozie.launcher.mapreduce.map.memory.mb</name>
                        <value>8192</value>
                </property>
                <property>
                        <name>oozie.launcher.mapreduce.map.java.opts</name>
                        <value>-Xmx6000m</value>
                </property>
                <property>
                        <name>oozie.launcher.mapreduce.map.cpu.vcores</name>
                        <value>24</value>
                </property>
                <property>
                    <name>mapreduce.job.queuename</name>
                    <value>default</value>
                </property>
            </configuration> 

oozie.launcher.mapreduce.map.memory.mb
8192
oozie.launcher.mapreduce.map.java.opts
-Xmx6000m
oozie.launcher.mapreduce.map.cpu.vcores
24
mapreduce.job.queuename
违约

我还没有尝试过纱线簇模式,但spark选项可能适用于驾驶员设置。但我的问题是关于纱线客户端模式。

这是一个救命恩人!这是救命恩人!