e-mapreduce运行任务时 经常报错Caused by: java.lang.OutOfMemoryError: Java heap space -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

e-mapreduce运行任务时 经常报错Caused by: java.lang.OutOfMemoryError: Java heap space

e-mapreduce运行任务时 经常报错Caused by: java.lang.OutOfMemoryError: Java heap space 查看系统内存都是正常的,这个内存怎么配置呢 ?

展开
收起
封神 2016-08-31 10:32:10 3673 0
1 条回答
写回答
取消 提交回答
  • 封神
    封神 09年加入阿里巴巴,阿里云高级技术专家、架构师;专注在大数据、分布式数据库领域,10年分布式研发经验;参与研发万台大数据Hadoop离线计算平台;负责研发多款阿里云一级大数据及数据库产品,如云Cassandra

    只要是java,就可能出现oom的。heap溢出是最常见的。
    这里没有指出具体跑的是hive、hadoop mr还是spark。可以具体分析是什么原因引起的溢出,常见的原因有:
    1、数据倾斜 解决办法是增加并发,或者单独为key增加随机数,后再聚合。
    2、spark则可能原因是cache过多,可以换多层换成或者增加内层。

    有时候 给map或者reduce内存过小也可能会出现内存溢出,一般来讲大于1024m为宜

    2019-07-17 20:06:47
    赞同 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
《E-MapReduce on ACK 全新发布,助力企业高效构建大数据平台》
立即下载
基于E-MapReduce梨视频推荐系统
立即下载
\"Hadoop的过去现在和未来——从阿里云梯到E-MapReduce \"
立即下载