spark任务jvm内存溢出
使用提交命令
park-submit
\--master yarn --deploy-mode client
\--driver-memory 2g
\--executor-memory 4g
\--executor-cores 4
\--num-executors 3
运行后任务报错
2020-09-09 10:53:43 INFO TaskSetManager:54 - Starting task 12.0 in stage 6.0 (TID 420, data-03.com, executor 2, partition 12, NODE_LOCAL, 8637 bytes)
2020-09-09 10:53:43 WARN TaskSetManager:66 - Lost task 2.0 in stage 6.0 (TID 410, data-03.com, executor 2): java.lang.OutOfMemoryError: GC overhead limit exceededat java.lang.StringCoding.encode(StringCoding.java:350)at java.lang.String.getBytes(String.java:941)at org.apache.spark.unsafe.types.UTF8String.fromString(UTF8String.java:110)at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIteratorForCodegenStage2.serializefromobject_doConsume$(Unknown Source)at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIteratorForCodegenStage2.processNext(Unknown Source)at org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43)at org.apache.spark.sql.execution.WholeStageCodegenExec$$anonfun$10$$anon$1.hasNext(WholeStageCodegenExec.scala:614)at org.apache.spark.sql.execution.UnsafeExternalRowSorter.sort(UnsafeExternalRowSorter.java:216)at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec$$anonfun$2.apply(ShuffleExchangeExec.scala:295)at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec$$anonfun$2.apply(ShuffleExchangeExec.scala:266)at org.apache.spark.rdd.RDD$$anonfun$mapPartitionsInternal$1$$anonfun$apply$25.apply(RDD.scala:830)at org.apache.spark.rdd.RDD$$anonfun$mapPartitionsInternal$1$$anonfun$apply$25.apply(RDD.scala:830)at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:96)at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:53)at org.apache.spark.scheduler.Task.run(Task.scala:109)at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:345)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)2020-09-09 10:53:44 INFO YarnSchedulerBackend$YarnDriverEndpoint:54 - Disabling executor 2.
2020-09-09 10:53:44 INFO DAGScheduler:54 - Executor lost: 2 (epoch 0)
2020-09-09 10:53:44 INFO BlockManagerMasterEndpoint:54 - Trying to remove executor 2 from BlockManagerMaster.
2020-09-09 10:53:44 INFO BlockManagerMasterEndpoint:54 - Removing block manager BlockManagerId(2, data-03.com, 21483, None)
2020-09-09 10:53:44 INFO BlockManagerMaster:54 - Removed 2 successfully in removeExecutor
2020-09-09 10:53:44 INFO DAGScheduler:54 - Shuffle files lost for executor: 2 (epoch 0)
2020-09-09 10:53:45 WARN YarnSchedulerBackend$YarnSchedulerEndpoint:66 - Requesting driver to remove executor 2 for reason Container marked as failed: container_1597910745756_0040_01_000003 on host: data-03.com. Exit status: 143. Diagnostics: Container killed on request. Exit code is 143
Container exited with a non-zero exit code 143
Killed by external signal
可以看到报的是JVM的内存溢出,这种情况下一般都是分配给任务使用的内存过小,可以缩小每个executor上的executor-cores
也可以增大 executor-memory
spark任务jvm内存溢出相关推荐
- 生产环境 JVM 内存溢出案例分析
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:blog.csdn.net/prestigeding ...
- 生产环境JVM内存溢出案例分析
如果我们所在公司的业务量比较大,在生产环境经常会出现JVM内存溢出的现象,那我们该如何快速响应,快速定位,快速恢复问题呢? 本文将通过一个线上环境JVM内存溢出的案例向大家介绍一下处理思路与分析方法. ...
- 生产环境JVM内存溢出案例分析!
点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:Nginx 为什么快到根本停不下来? 个人原创100W+访问量博客:点击前往,查看更多 来源:blog.csdn ...
- Tomcat中JVM内存溢出及合理配置(转:http://blog.csdn.net/ye1992/article/details/9344807)
Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对Java JVM有关内存方面的知识 ...
- jvm 内存溢出问题排查方法
如果你做TCP通讯或者map集合操作,并发处理等功能时,很容易出现 Java 内存溢出的问题.本篇文章,带领大家深入jvm,分析并找出jvm内存溢出的代码. jvm中除了程序计数器,其他的区域都有可能 ...
- linux查看tomcat启动内存溢出,关于tomcat乱码以及tomcat jvm 内存溢出问题的解决方案和理论-Fun言...
一:乱码问题1(前端通过url方式传递中文参数后台收到的是????) 此为Tomcat根目录-conif-server.xml 中 connectionTimeout="20000″ red ...
- tomcat中 JVM 内存溢出及合理配置
Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对Java JVM有关内存方面的知识 ...
- 一位面试官询问我:Java中的JVM内存溢出和内存泄露是什么?我这么回答成功拿到了offer
一位面试官询问我:Java中的JVM内存溢出和内存泄露是什么?我这么回答成功拿到了offer. 墨眉无锋墨家代码 2020-11-22 20:16:50 10525 收藏 56 分类专栏: Java ...
- java 内存溢出时打印_如何在JVM内存溢出的时候自动dump内存快照
解决OOM问题的一个初步思路 首先第一个问题,假设发生OOM了,必然说明系统中某个区域的对象太多了,塞满了那个区域,而且一定是无法回收掉那些对象,最终才会导致内存溢出的. 既然是这个思路,要解决OOM ...
最新文章
- 2018年工业机器人销量排位_2020年全球工业机器人现状与竞争情况 中国为全球最大供应国...
- Python成员运算符
- JS中的算法与数据结构——排序(Sort)
- Matlab图像分割---使用主动轮廓 (snake) 方法进行图像分割
- win10怎么更新显卡驱动_更新Win10设备驱动程序的4种方法,方便实用,你知道几种...
- Mac实用软件及功能总结
- LEACH算法仿真实验
- DTU有什么用?是怎样工作的?
- 基于jquery读取csv
- web播放m3u8文件且进行加密处理
- Windows7系统优化(批处理)
- 【动手学深度学习】李沐——卷积神经网络
- python库源码分析_python第三方库Faker源码解读
- 计算机域账号更改添加
- 【数据安全】数据脱敏解决方案
- **Matlab中CLF的使用**
- 英语不好计算机学不会,英语和数学不好的人是不是学不会编程?
- Android如何安全替换证书
- 3种解决安卓(android)手机锁屏密码忘记的方法!
- 设计师7个细微但是高效有用的习惯