我正在尝试运行 Spark (Java) 代码并收到错误
org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow. Available: 0, required: 27".
其他帖子建议将缓冲区设置为其最大值。当我以 512MB 的最大缓冲区值尝试此操作时,出现错误
java.lang.ClassNotFoundException: org.apache.spark.serializer.KryoSerializer.buffer.max', '512'
我怎么解决这个问题?
最佳答案
属性名称正确,spark.kryoserializer.buffer.max
,该值应包括单位,因此在您的情况下为 512m。
此外,取决于您在哪里设置配置,您可能必须编写 --conf spark.kryoserializer.buffer.max=512m
.例如,使用 spark-submit
或在 <spark-opts>...</spark-opts>
内一个 Oozie worflow Action 。
关于apache-spark - 解决 "Kryo serialization failed: Buffer overflow"Spark 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37709770/