可以安全地假设在rdd上减去pyspark的速度很慢/有问题吗?

时间:2017-10-07 21:21:12

标签: pyspark

在运行pyspark工作时,随着输入的增长,我注意到我一直在收到内存错误,如下所示......

ERROR cluster.YarnScheduler: Lost executor 12 on compute-2-10.local:
Container killed by YARN for exceeding memory limits. 1.5 GB of 1.5 GB
physical memory used. Consider boosting spark.yarn.executor.memoryOverhead.

虽然即使在执行过程中重复出现错误,它也会在较小的输入上成功完成,但最终会随着输入大小的增加而消失。

我有~20,000,000,000行,我需要从中过滤掉~661,000行。考虑到密钥的格式,除了使用减法之外,我无法想到任何其他处理方法。

2 个答案:

答案 0 :(得分:1)

执行程序内存的1.5GB非常低:通常尝试至少提供两倍的数量。仅仅通过不使资源的执行者挨饿就可以解决这个问题。

答案 1 :(得分:1)

我使用至少4GB的内存。您可以这样设置: pyspark --num-executors 5 --driver-memory 2g --executor-memory 4g