Rei*_*jay 12 apache-spark pyspark
美好的一天.
我正在运行一个用于解析一些日志文件的开发代码.如果我尝试解析较少的文件,我的代码将顺利运行.但是当我增加需要解析的日志文件的数量时,它将返回不同的错误,例如too many open files和Total size of serialized results of tasks is bigger than spark.driver.maxResultSize.
我试图增加spark.driver.maxResultSize但错误仍然存在.
你能否就如何解决这个问题给我任何想法?
谢谢.

小智 12
Total size of serialized results of tasks is bigger than spark.driver.maxResultSize表示当执行程序尝试将其结果发送给驱动程序时,它会超出spark.driver.maxResultSize.可能的解决方案如上所述由@mayank agrawal继续增加它直到你让它工作(如果执行者试图发送太多数据,则不是推荐的解决方案).
我建议查看你的代码,看看数据是否有偏差,这使得执行者之一完成大部分工作,从而导致大量数据输入/输出.如果数据偏斜,您可以尝试repartitioning一下.
对于过多的打开文件问题,可能的原因是Spark可能在shuffle之前创建了许多中间文件.如果在执行程序/高并行性或唯一键中使用了太多核心(在您的情况下可能的原因 - 大量输入文件),可能会发生这种情况.要研究的一个解决方案是通过此标志整合大量的中间文件:( --conf spark.shuffle.consolidateFiles=true当你这样做时spark-submit)
要检查的另一件事是这个线程(如果类似于你的用例):https://issues.apache.org/jira/browse/SPARK-12837
| 归档时间: |
|
| 查看次数: |
11314 次 |
| 最近记录: |