开发者社区> 问答> 正文

Spark如何实现序列化组件的?

Spark如何实现序列化组件的?

展开
收起
芯在这 2021-12-08 21:47:19 427 0
1 条回答
写回答
取消 提交回答
  • Spark通过两种方式来创建序列化器

    Java序列化

    在默认情况下,Spark 采用 Java的 ObjectOutputStream 序列化一个对象。该方式适用于所有实现了 java.io.Serializable 的类。通过继承 java.io.Externalizable,你能进一步控制序列化的性能。Java序列化非常灵活,但是速度较慢,在某些情况下序列化的结果也比较大。

    Kryo序列化

    Spark 也能使用 Kryo(版本2)序列化对象。Kryo 不但速度极快,而且产生的结果更为紧凑(通常能提高10倍)。Kryo 的缺点是不支持所有类型,为了更好的性能,你需要提前注册程序中所使用的类(class)。

    Java 的序列化比较简单,就和前面的一样,下面主要介绍Kryo序列化的使用。

    2021-12-08 21:47:39
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Hybrid Cloud and Apache Spark 立即下载
Scalable Deep Learning on Spark 立即下载
Comparison of Spark SQL with Hive 立即下载