|      1linuxchild      2017-12-25 16:54:10 +08:00 压缩一下再写试试 | 
|      2wudc OP @linuxchild 嗯,谢谢,我加上了这段代码 df.persist(StorageLevel.MEMORY_AND_DISK_SER),现在程序在跑 | 
|  |      3F281M6Dh8DXpD1g2      2017-12-25 17:25:25 +08:00 df.repartition(20) 这样不是只起二十个 partition 在写么 直接 df.write.json 试试? | 
|  |      5mind3x      2017-12-25 18:35:51 +08:00 用 coalesce(20) 试试 | 
|      8Mondoz      2017-12-25 18:46:45 +08:00 同 coalesce | 
|      9wudc OP @zhusimaji 卡在 df.repartition(20).write.json(savePath)这行了,数据量比较小时还可以但是数据量一大就栈溢出 | 
|  |      11F281M6Dh8DXpD1g2      2017-12-25 19:20:27 +08:00 可以先 df.repartition(20) 看看执行计划 然后你就明白为啥这么慢了 | 
|  |      13zhusimaji      2017-12-25 22:43:30 +08:00 via iPhone @wudc 一般情况下不要指定分区数,因为这个都会自动计算出合理的分区,分区设置的过少,必然导致每个 job 处理的时间变长 | 
|  |      17zhusimaji      2017-12-26 15:26:06 +08:00 oom 产生的原因很多,最好根据打印的 log 日志去找相对应的资料 |