我在纱线集群模式下运行一个应用程序。我的应用程序正在执行内部地图操作。
- 将 weka 模型从 S3 加载到 java 对象
- 使用加载的 weka 模型对象预测记录
问题是这在 1 个执行器上运行良好,而不是在多个执行器上运行。
这是我得到的错误
Stemmer'搬运工'未知!java.lang.NullPointerException at weka.core.stemmers.SnowballStemmer.stem(SnowballStemmer.java:408) at cat.weka.filters.unsupervised.attribute.SmtStringToWordVector.convertInstancewoDocNorm(TestStringToWordVector.java:1768) at cat.weka.filters。 unsupervised.attribute.SmtStringToWordVector.input(TestSmtStringToWordVector.java:776) at cat.engine.prediction.WekaMLPredictor.convertStringToWordVector(WekaMLPredictor.java:203)
这是我在地图操作中使用的 scala 代码
def applyMLModel(row: Row) {
val wekamodel = getmodel(id)
var result = wekamodel.predict(attr)
}