troubleshooting之解决各种序列化导致的报错
2017-09-21 22:23
447 查看
你会看到什么样的序列化导致的报错?
用client模式去提交spark作业,观察本地打印出来的log。如果出现了类似于Serializable、Serialize等等字眼,报错的log,那么恭喜大家,就碰到了序列化问题导致的报错。
虽然是报错,但是序列化报错,应该是属于比较简单的了,很好处理。
序列化报错要注意的三个点:
1、你的算子函数里面,如果使用到了外部的自定义类型的变量,那么此时,就要求你的自定义类型,必须是可序列化的。
final Teacher teacher = new Teacher("leo");
studentsRDD.foreach(new VoidFunction() {
public void call(Row row) throws Exception {
String teacherName = teacher.getName();
....
}
});
public class Teacher implements Serializable {
}
2、如果要将自定义的类型,作为RDD的元素类型,那么自定义的类型也必须是可以序列化的
JavaPairRDD<Integer, Teacher> teacherRDD
JavaPairRDD<Integer, Student> studentRDD
studentRDD.join(teacherRDD)
public class Teacher implements Serializable {
}
public class Student implements Serializable {
}
3、不能在上述两种情况下,去使用一些第三方的,不支持序列化的类型
Connection conn =
studentsRDD.foreach(new VoidFunction() {
public void call(Row row) throws Exception {
conn.....
}
});
Connection是不支持序列化的
用client模式去提交spark作业,观察本地打印出来的log。如果出现了类似于Serializable、Serialize等等字眼,报错的log,那么恭喜大家,就碰到了序列化问题导致的报错。
虽然是报错,但是序列化报错,应该是属于比较简单的了,很好处理。
序列化报错要注意的三个点:
1、你的算子函数里面,如果使用到了外部的自定义类型的变量,那么此时,就要求你的自定义类型,必须是可序列化的。
final Teacher teacher = new Teacher("leo");
studentsRDD.foreach(new VoidFunction() {
public void call(Row row) throws Exception {
String teacherName = teacher.getName();
....
}
});
public class Teacher implements Serializable {
}
2、如果要将自定义的类型,作为RDD的元素类型,那么自定义的类型也必须是可以序列化的
JavaPairRDD<Integer, Teacher> teacherRDD
JavaPairRDD<Integer, Student> studentRDD
studentRDD.join(teacherRDD)
public class Teacher implements Serializable {
}
public class Student implements Serializable {
}
3、不能在上述两种情况下,去使用一些第三方的,不支持序列化的类型
Connection conn =
studentsRDD.foreach(new VoidFunction() {
public void call(Row row) throws Exception {
conn.....
}
});
Connection是不支持序列化的
相关文章推荐
- troubleshooting 解决各种序列化导致的错误
- Spark优化-troubleshooting-解决各种序列化导致的错误
- Spark性能优化----troubleshooting之解决各种序列化导致的报错
- spark troubleshooting--解决各种序列化导致的错误
- jfreechart出现ChartDeleter没有序列化问题导致session信息丢失的解决方法
- 大数据实验增加,导致虚拟机的根目录/ 磁盘空间不够,会带来各种问题, 使用gpated工具解决!!
- jfreechart出现ChartDeleter没有序列化问题导致session信息丢失的解决方法
- troubleshooting之解决算子函数返回NULL导致的问题
- jfreechart出现ChartDeleter没有序列化问题导致session信息丢失的解决方法
- WinForm 防止因为各种因素的操作导致主窗体冻结、卡死的解决方法
- 关于意外宕机导致VS读取项目出错的各种问题解决方案
- MYSQL主机Master磁盘写满,导致主从数据无法同步各种问题解决
- 各种导致xp系统宽带连接速度慢问题的原因及解决方法
- troubleshooting之解决yarn-client模式导致的网卡流量激增问题
- troubleshooting之解决YARN队列资源不足导致的application直接失败
- 为查看代码和编辑代码而导入工程后导致各种问题解决方法
- flex模块切换时导致对象不正确序列化的解决办法
- Unity BUG解决——角色上面挂载着NavMeshAgent运行后不跟随角色, 导致角色各种乱走
- 完美解决ListView内部嵌套GridView导致各种异常,无法点击的问题
- extjs框架中由于id导致的各种异常的解决方法