【问题标题】:How to use map in spark without implementing Serializable?如何在火花中使用地图而不实现可序列化?
【发布时间】:2020-03-27 06:29:53
【问题描述】:

我在代码中使用了map(),它抛出了NotSerializableException,所以我实现了Serializable

有没有其他方法可以克服这个异常,还是 map 总是使用Serializable

Dataset<Row> outdf=indf.map(new MapFunction<Row,Row>() {

    @Override
    public Row call(Row row){
          //Calling another function in another class 
 
       return r;//r is also a row
     }
},encoder);

【问题讨论】:

  • 在您的解决方案中实现Serializable 的是什么?
  • 我使用这个代码的类。我的类名是 Mapping 所以它的类 Mapping 实现了 Serializable
  • 如果你告诉我们你在哪里使用这个类,它可能会给我们一些线索

标签: java apache-spark apache-spark-sql


【解决方案1】:

在调用函数内部,如果你使用的是 Mapping 类中的某些东西(变量,对象),那么这个 Mapping 类需要实现 Serializable。

请参阅此article

【讨论】:

    猜你喜欢
    • 2018-08-20
    • 2018-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多