一 序列化
1.闭包检测
总结
- 闭包:函数中使用到了外部的变量
- 调用算子方法时,会进行闭包检测 是否能够序列化
- 因为需要进行网络IO
2.Kryo序列化
Java提供的序列化比较笨重
val conf: SparkConf = new SparkConf()
.setAppName("SerDemo")
.setMaster("local[*]")
// 替换默认的序列化机制
.set("spark.serializer",
"org.apache.spark.serializer.KryoSerializer")
// 注册需要使用 kryo 序列化的自定义类
.registerKryoClasses(Array(classOf[Searcher]))