我正在AWS EMR上学习火花。在这个过程中,我试图理解执行者数量(--num-executors)和执行者核心(--executor-cores)之间的区别。谁能告诉我这里吗?
同样,当我试图提交以下作业时,我得到了错误:
spark-submit --deploy-mode cluster --master yarn --num-executors 1 --executor-cores 5 --executor-memory 1g -–conf spark.yarn.submit.waitAppCompletion=false wordcount.py s3://test/spark-example/input/input.txt s3://test/spark-example/output21
Error: Unrecognized option: -–conf
Number of executors是将执行应用程序的不同的yarn容器(想想进程/JVM)的数量。
Number of executor-cores是在每个executor(容器)中获得的线程数。
因此,spark应用程序的并行度(运行的并发线程/任务数)是#executors×#executor-cores
。如果您有10个执行器和5个执行器核心,您将有(希望)50个任务同时运行。
> 执行者为每个应用程序。那么工人的角色是什么呢?它是否与执行者协调并将结果反馈给驱动程序?还是司机直接找被执行人对话?如果是的话,那么工人的目的是什么呢? 如何控制申请执行人数? 任务可以在执行器中并行运行吗?如果是,如何配置执行器的线程数? 示例2与示例1相同的集群配置,但我使用以下设置运行一个应用程序--executor-cores10--total-executor-cores10。 示例
我在AWS上设置了一个10节点的HDP平台。下面是我的配置2台服务器——名称节点和备用名称节点7个数据节点,每个节点有40个vCPU和160 GB内存。 我试图在提交spark应用程序时计算执行者的数量,在浏览了不同的博客后,我对这个参数的实际含义感到困惑。 看看下面的博客,num executors似乎是所有节点上的执行者总数http://blog.cloudera.com/blog/2015/
Apache Spark:核心数与执行器数 由于每个案例都不一样,我又问了一个类似的问题。 我正在运行一个cpu密集型的应用程序,具有相同数量的核心和不同的执行器。以下是观察结果。 更新 案例3:执行器-12个,每个执行器的核心数-1个,执行器内存-3个,数据处理量-10 GB,分区-36个,作业持续时间:81分钟
我正在使用spark submit执行以下命令: spark submit script\u测试。py—主纱线—部署模式群集spark submit script\u测试。py—主纱线簇—部署模式簇 这工作做得很好。我可以在Spark History Server UI下看到它。但是,我无法在RessourceManager UI(纱线)下看到它。 我感觉我的作业没有发送到集群,但它只在一个节点上
注意:我在纱线上使用火花 我一直在尝试Spark中实现的公制。我启用了ConsoleSink和CsvSink,并为所有四个实例(驱动程序、主程序、执行器和工作程序)启用了JvmSource。然而,我只有驱动程序输出,在控制台和csv目标目录中没有工人/执行者/主数据。 看完这个问题后,我想知道在提交作业时,是否需要向执行者发送一些东西。 我的提交命令:<code>/bin/sark提交——类org
java.util.concurrent.Executor接口是一个支持启动新任务的简单接口。 ExecutorService方法 Sr.No. 方法和描述 1 void execute(Runnable command) 在将来的某个时间执行给定的命令。 例子 (Example) 以下TestThread程序显示了基于线程的环境中Executor接口的使用。 import java.util.c