map与mapPartitions内部实现的区别

来源:11-2 -外部数据源接口

aaaaabbbc

2018-10-31

图片描述

我在解析log时使用了mapPartitions,但是碰到了OOM问题,究其原因,我觉得是我使用的statList存放所有解析后的数据,这个list一直存在于内存中造成OOM。但是查了网上的说法,大家都说mapPartitions容易造成OOM,map本身则不会。我就想请问,spark在map的时候,1)将中间结果保存在哪里?2)为什么map的时候不容易OOM?3)我可不可以在mapPartitions里面使用map的一些内存管理的方式来避免OOM?

先在这里谢谢PK老师!

写回答

1回答

Michael_PK

2018-10-31

map是一条一条的处理,他不存数据啊,只有action才会触发执行。map partition是一个partition数据处理一次,数据量大就oom了么

0
9
aaaaabbbc
非常感谢PK的耐心解答!
2018-11-01
共9条回复

以慕课网日志分析为例 进入大数据Spark SQL的世界

快速转型大数据:Hadoop,Hive,SparkSQL步步为赢

1644 学习 · 1129 问题

查看课程