首页 文章

Spark SQL Java:线程“main”org.apache.spark.SparkException中的异常

提问于
浏览
1

我在看 table . 其中一列包含压缩(二进制)数据 . 我正在解压缩这些数据并存储在另一个RDD中 . 它给出以下错误:

线程“main”中的异常org.apache.spark.SparkException:作业因阶段失败而中止:阶段2.0中的任务0失败1次,最近失败:阶段2.0中丢失任务0.0(TID 2,localhost, Actuator 驱动程序) :java.util.concurrent.ExecutionException:java.lang.Exception:编译失败:org.codehaus.commons.compiler.CompileException:文件'generated.java',第36行,第31列:名为“toString”的方法不是在任何封闭类或任何超类型中声明,也不通过静态导入声明

码:

Dataset<Row> df = spark  .read()  .format("jdbc")  .options(options)  
.load().limit(10);

JavaRDD<ConfigObject> 
configObjs=df.as(Encoders.bean(ConfigObject.class)).javaRDD();

JavaRDD<ConfigObjectResult> configObjsResult=configObjs.map(obj -> {
ConfigObjectResult confObjRes= new ConfigObjectResult();
confObjRes.setConfigID(obj.getConfigID());
confObjRes.setAgentVersion(obj.getAgentVersion());
confObjRes.setUncompressedDoc(Compressor.getInstance().
unCompressData(obj.getCompressedDoc()));
confObjRes.setCreationDate(obj.getCreationDate());
    return  confObjRes;
});

1 回答

  • 0

    CreationDate是数据库中的时间戳 . 同样是我的Obj中的String . 将时间戳转换为String后,它可以工作 .

相关问题