首页 > 解决方案 > Java 序列化 vs Hadoop 序列化 vs Spark 序列化

问题描述

我一直在研究SerializationDeserialization处理并Java试图理解同样的事情。HadoopSpark

Hadoop有人可以让我知道 和 的序列化过程之间Spark的区别Java

标签: javaapache-sparkhadoopserializationdeserialization

解决方案


Hadoop 有自己的序列化接口(Writable),旨在使产生的垃圾尽可能少。当 mapper 或 reducer 运行时,实现它的对象是可变的和重用的,从而进一步降低了垃圾量。设计合理的 Writables 也可以由不同版本的代码编写,解决了 Serializable 的固有问题。

Spark 没有自己的序列化,默认使用原生 java 序列化。它的性能不是很好,并且可以使用Kryo制作 spark ,这有时会带来 10 倍的性能增益。但是,在使用 Kryo 时,所有自定义类都应在运行作业之前在 SparkConf 中注册。


推荐阅读