java - 如何在火花中使用地图而不实现可序列化?
问题描述
我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);
解决方案
在调用函数内部,如果您使用的是 Mapping 类中的某些东西(变量,对象),那么这个 Mapping 类需要实现 Serializable。
参考这篇文章。
推荐阅读
- javascript - 在 MongoDB 上一段时间后如何删除组件?
- django - 在Django模板中将两个表关联在一起并计算条目数
- swift - 将 UIBezierPath 变成蒙版?
- r - R:从值列表和变量名称列表创建数据框
- react-native - 错误:无效的 Json RPC 响应:“无法连接 127.0.0.1:7545”| Web3js |反应原生| 移动的
- c++ - 部分方法专业化
- r - 将数据框中的 1 行从数字更改为因子
- apache-kafka - filebeat 到 kafka:无法连接到代理
- javascript - 单击另一个组合框的边缘或组合框外部时出现 Vuetify 组合框问题
- java - -source 1.6 [ERROR] 不支持 lambda 表达式(使用 -source 8 或更高版本来启用 lambda 表达式)