最近在使用spark进行分析的时候 几千万的数据量感觉不多 但是跑起来非常慢
内存溢出OutOfMemory
1.然后在有使用map的地方 在map之前进行分区repartition
2.join会有shuffle产生 shuffle也会产生数据溢出
3.map也可以换成 mapPartitions 并且适当调整分区数 200 400
其他的还有很多 我用的就这些 然后任务可以跑出来。
还有什么错误 比如 reset by peer还有什么255的错误
报错信息没有记录
然后使用配置文件去调整
config.set("spark.network.timeout","100000")
config.set("spark.executor.heartbeatInterval","100s")
config.set("spark.executor.memory", "50g")
config.set("spark.shuffle.blockTransferService", "nio")
没用
主要是代码问题。。。