sou*_*ics 5 scala kryo apache-spark
我正在尝试了解以下错误,并且正在客户端 ode 中运行。
org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow. Available: 0, required: 61186304. To avoid this, increase spark.kryoserializer.buffer.max value.
at org.apache.spark.serializer.KryoSerializerInstance.serialize(KryoSerializer.scala:300)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:313)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Run Code Online (Sandbox Code Playgroud)
基本上我试图缩小问题的范围。我的理解是否正确,这个错误发生在火花驱动程序端(我在 aws emr 上,所以我相信这将在主服务器上运行)?我应该看看spark.driver.memory?
不,问题在于 kryo 的缓冲区中没有足够的空间。您应该spark.kryoserializer.buffer.max在属性文件中进行调整,或--conf "spark.kryoserializer.buffer.max=128m"在 spark-submit 命令中使用。128m对你来说应该足够大了。
| 归档时间: |
|
| 查看次数: |
10583 次 |
| 最近记录: |