我收到这个错误。我不确定为什么会出现这种情况,因为 org.apache.spark.rdd.RDD 中有一个合并方法。 有任何想法吗? 我运行的 Spark 和 org.apache.spark.rdd.RDD 版本是否不兼容?
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.spark.rdd.RDD.coalesce$default$3(IZ)Lscala/math/Ordering;
最佳答案
这是因为您的代码或项目依赖项的某些部分称为旧版本(2.0.0之前的spark版本)spark API“合并”,而在新版本spark中,此API已被删除并被“重新分区”替换。
要解决此问题,您可以将 Spark 运行环境降级到 2.0.0 以下版本,也可以将 SDK Spark 版本升级到 2.0.0 以上,并升级项目依赖项版本以兼容 Spark 2.0.0 或如上所述。
欲了解更多详情,请参阅此主题: https://github.com/twitter/algebird/issues/549 https://github.com/EugenCepoi/algebird/commit/0dc7d314cba3be588897915c8dcfb14964933c31
关于scala - Spark 合并错误 - 没有这样的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40469821/