spark优化之重构rdd架构及rdd持久化

什么是RDD持久化?

spark最重要的一个功能,就是把一个数据集缓存在内存,磁盘或者分布式文件系统中。如果持久化了这一个数据集,那么对此数据集进行操作的其他操作可以直接复用该数据集,不用重新计算,这会使该操作执行的迅速。

为啥要进行RDD持久化?

因为要不进行持久化的话,如果多次对一个rdd执行算子的话,spark默认会重算。比如rdd3和rdd4同时基于rdd2做运算,如果不做持久化的话,rdd2会计算两次。

如何做RDD持久化?

1.尽量复用rdd
2.然后对该rdd做持久化
3.如果该rdd数据量多大,可以考虑对该rdd序列化,但是在获取数据的时候,不要忘了反序列化
4.如果想要高可靠性,可以使用MEMORY_ONLY_2,复制一份副本,并将副本保存到其他节点上

公众号:guowei  ,了解更多大数据知识

你可能感兴趣的:(大数据开发,rdd,spark,persist,持久化,大数据)