执行如下代码时报错

# encoding:utf-8
from pyspark import SparkConf, SparkContext
from pyspark.sql import SparkSession conf = SparkConf().setMaster('yarn')
sc = SparkContext(conf=conf)
spark = SparkSession(sc)
rdd = spark.read.csv('/spark/gps/GPS1.csv')
print rdd.count()
print rdd.repartition(10000).count()
print rdd.repartition(10000).collect() # 报错 spark-OutOfMemory:GC overhead limit exceeded

执行命令

spark-submit --master yarn bigdata.py

报错内容

spark-OutOfMemory:GC overhead limit exceeded

在执行 count 时没什么问题,各种参数影响不大;但是在执行 collect 时,总是报错

原因分析

1. collect 导致数据回传 Driver,致使 Driver 内存溢出

解决方法是增加 Driver 内存

spark-submit --master yarn --executor-cores 4 --driver-memory 3G  bigdata.py

2. executor-core 数量太多,导致多个 core 之间争夺 GC 时间以及资源,最后导致大部分时间都花在了 GC 上

解决方法是减少 core 数量

spark-submit --master yarn --executor-cores 1  bigdata.py

参考资料:

https://blog.csdn.net/amghost/article/details/45303315

spark异常篇-OutOfMemory:GC overhead limit exceeded的更多相关文章

  1. Spark java.lang.outofmemoryerror gc overhead limit exceeded 与 spark OOM:java heap space 解决方法

    引用自:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece7631046893b4c4380146d96864968d4e414c42246 ...

  2. Spark 1.4.1中Beeline使用的gc overhead limit exceeded

    最近使用SparkSQL做数据的打平操作,就是把多个表的数据经过关联操作导入到一个表中,这样数据查询的过程中就不需要在多个表中查询了,在数据量大的情况下,这样大大提高了查询效率.   我启动了thri ...

  3. Spark OOM:java heap space,OOM:GC overhead limit exceeded解决方法

    问题描述: 在使用spark过程中,有时会因为数据增大,而出现下面两种错误: java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMe ...

  4. java 异常 java.lang.OutOfMemoryError: GC overhead limit exceeded 解决

    一.异常如下: Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded ...

  5. 记一次由于引用第三方服务导致的GC overhead limit exceeded异常

    最近笔者遇到一个问题  监控平台忽然告警 GC overhead limit exceeded 这个异常 第一反应估计是堆溢出了.于是各种各种jmap  jstack下载堆栈文件和堆日志文件. 以下是 ...

  6. JVM--你常见的jvm 异常有哪些? 代码演示:StackOverflowError , utOfMemoryError: Java heap space , OutOfMemoryError: GC overhead limit exceeded, Direct buffer memory, Unable_to_create_new_native_Thread, Metaspace

    直接上代码: public class Test001 { public static void main(String[] args) { //java.lang.StackOverflowErro ...

  7. java.lang.OutOfMemoryError:GC overhead limit exceeded填坑心得

    我遇到这样的问题,本地部署时抛出异常java.lang.OutOfMemoryError:GC overhead limit exceeded导致服务起不来,查看日志发现加载了太多资源到内存,本地的性 ...

  8. [转]java.lang.OutOfMemoryError:GC overhead limit exceeded

    我遇到这样的问题,本地部署时抛出异常java.lang.OutOfMemoryError:GC overhead limit exceeded导致服务起不来,查看日志发现加载了太多资源到内存,本地的性 ...

  9. GC overhead limit exceeded填坑心得

    我遇到这样的问题,本地部署时抛出异常java.lang.OutOfMemoryError:GC overhead limit exceeded导致服务起不来,查看日志发现加载了太多资源到内存,本地的性 ...

随机推荐

  1. AE开发之shp转txt

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  2. Hadoop环境搭建|第一篇:linux操作系统安装

    一.安装工具及文件 优盘:8G(非kingston优盘) 制作启动盘工具:Universal_USB_Installer 操作系统:CentOs操作系统 二.注意事项 安装过程的详细步骤,这里就不再赘 ...

  3. CISCO实验记录十一:switch端口安全配置

    1.启用交换机端口安全 2.限制端口最大访问量为1,超出后关闭端口 1.启用交换机端口安全 #interface gigabitEthernet 0/1 #switchport mode access ...

  4. R-CNN/Fast R-CNN/Faster R-CNN

    一.R-CNN 横空出世R-CNN(Region CNN,区域卷积神经网络)可以说是利用深度学习进行目标检测的开山之作,作者Ross Girshick多次在PASCAL VOC的目标检测竞赛中折桂,2 ...

  5. app微信支付的集成步骤

    1.引用地址 //微信支付 compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+' 2.注册 private IWXAPI api ...

  6. laydate V5-0-8动态设置min值

    laydate通过设置min,max值来对用户输入的时间做约束 laydate v1.0版本 //日期插件 var start={ elem:"#start", format:&q ...

  7. Python日志模块应用

    # encoding:utf-8 import logging import time class Logs: def __init__(self): self.logger = logging.ge ...

  8. 用VLC读取摄像头产生RTSP流,DSS主动取流转发(一)

    用VLC读取摄像头产生RTSP流,DSS主动取流转发(一) 摄像机地址是192.1.101.51,VLC运行在192.1.101.77上,DSS服务器架设在192.1.101.30上. Step1:V ...

  9. XHProf报告字段含义

    Function Name:方法名称. Calls:方法被调用的次数. Calls%:方法调用次数在同级方法总数调用次数中所占的百分比. Incl.Wall Time(microsec):方法执行花费 ...

  10. Python 零基础知识学习

      在开始学习Python之前,首先进入python shell ,输入:import this 命令,如下图所示: Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Py ...