Spark executor.memory
2015-12-04 21:38
399 查看
参考:
1.Setting spark.executor.memory problem2.How to set Spark executor memory?
3.How to set Apache Spark Executor memory
Setting spark.executor.memory problem
问题:在local mode下配置环境出错:
//出错代码: val conf = new SparkConf() .setMaster("local") .setAppName("app") .set("spark.executor.momory","2g") .set("spark.storage.memoryFraction","0.5") val sc = new SparkContext(conf)
程序不工作,在Spark UI 这个变量可能被设置了,但是memory store 还是0.5 * 512MB(默认的 spark.executor.memory) 而不是 0.5*2GB。
14/08/05 15:34:00 INFO MemoryStore: MemoryStore started with capacity 245.8 MB.
回答:
对local mode,你只有一个executor,这个executor就是你的driver,所以要设置driver’s memory 而不是executor’s memory.
这就是说,在local mode中,run spark-submit的时候,一个JVM已经通过默认的memory设置运行了,所以在conf中设置
spark.driver.memory实际上不会发生任何事。
需要这样:
bin/spark-submit –driver-memory 2g –class your.class.here app.jar
这样就会启动2G的JVM而不是默认的512MB。
Clarification:
you’ll need to pass in –driver-memory not just for local mode, but for any application you’re launching with “client” deploy mode
澄清:不只是本地模式,而是对于任何“客户端”部署模式启动的应用程序,你需要通过设置driver-memory 来启用。
2.How to set Spark executor memory?
问题:已经设置spark.executor.memory 为 2048m;
在UI “Environment”page 已经被正确设置,但是在executor页面,只有一个executor,memory为265.4MB,Why not 256MB
?
回答:
“executor”的列表里也包括了driver ,driver的ID是
<driver>,这个process不是由Spark启动的,所以它不会被spark.executor.memory影响。
如果通过spark-submit启动driver,最大内存可以由
spark.driver.memory或者
--driver-memory控制。
If you start it as a plain old Java program, use the usual -Xmx Java flag.
相关文章推荐
- 2015最新PC机 虚拟机 开发板互联互通
- 质量的真相
- project euler 51
- Light OJ 1082 Array Queries 【RMQ裸题】
- Map接口
- 虚拟机Linux如何使用笔记本电脑的前置摄像头
- n后问题(回溯法)
- 安装Ubuntu双系统系列——安装中文输入法
- Win(Phone)10开发第(7)弹,Extended Execution
- 【iCore3双核心板】扩展引脚分布
- 扣丁学堂——ViewPager+ImageSwitch
- 我的监控系统
- 安装pygame for Python3.5
- shell编程高级之gawk程序
- 如何获取web项目hibernate.cfg.xml配置文件中的数据
- project euler 50
- jQuery-1.9.1源码分析系列(十六)ajax——ajax处理流程以及核心函数
- PAT 1006 换个格式输出整数
- leetcode Find the Duplicate Number
- project euler 49