繁体   English   中英

增加Spark实例的执行者数量

[英]Increase Number of Executors for a spark instance

我正在通过pyspark启动一个spark实例。 我正在使用的系统是EC2上的r3.8x,具有244GB内存和32个vCPU。 我正在使用的代码是

#Import Packages
import os
import sys
import pandas as pd
import numpy as np
import glob
import shutil

#Initialize Spark Environment
spark_path = "C:\spark"
os.environ['SPARK_HOME'] = spark_path
os.environ['HADOOP_HOME'] = spark_path

sys.path.append(spark_path + "/bin")
sys.path.append(spark_path + "/python")
sys.path.append(spark_path + "/python/pyspark/")
sys.path.append(spark_path + "/python/lib")
sys.path.append(spark_path + "/python/lib/pyspark.zip")
sys.path.append(spark_path + "/python/lib/py4j-0.10.4-src.zip")

from pyspark import SparkContext
from pyspark import SparkConf

sc =  SparkContext("local", "test") 
#sc =  SparkContext("local", "test") 

sc.defaultParallelism
1

我使用spark-defaults.conf文件设置了一些参数,如下所示

spark.driver.memory 20g
spark.executor.cores 2
spark.executor.instances 16
spark.executor.memory 220g
spark.memory.fraction 0.07
spark.worker.cleanup.enabled true

pyspark中的此代码对此进行了确认

> sc._conf.getAll()
[('spark.executor.memory', '220g'),
 ('spark.app.id', 'local-1500885816084'),
 ('spark.app.name', 'test'),
 ('spark.executor.id', 'driver'),
 ('spark.driver.port', '61076'),
 ('spark.executor.instances', '16'),
 ('spark.executor.cores', '2'),
 ('spark.master', 'local[32]'),
 ('spark.driver.memory', '20g'),
 ('spark.rdd.compress', 'True'),
 ('spark.serializer.objectStreamReset', '100'),
 ('spark.submit.deployMode', 'client'),
 ('spark.memory.fraction', '0.07'),
 ('spark.worker.cleanup.enabled', 'true')]

现在,当我使用localhost:4041检查资源管理器时,将获得此表

在此处输入图片说明

似乎只有一个执行程序正在运行。 我该如何正确设置?

spark.master设置为local[32] ,它将使用嵌入式执行程序(此处具有32个线程)启动单个jvm驱动程序。

在本地模式下, spark.executor.coresspark.executor.instances不适用。

您应该考虑以独立模式运行,在那里您将能够拥有驱动程序和不同的执行程序。

https://spark.apache.org/docs/latest/spark-standalone.html

顺便提一句,当前配置将请求16个执行器,每个执行器具有220GB,这不能用您给出的规范来回答。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM