创建RDD和RDD的持久化

来源:互联网 发布:淘宝好的男装店 编辑:程序博客网 时间:2024/05/29 03:28

创建RDD的方式

第一种:通过并行化的方式创建RDD

val arr = Array(1,2,3,4,5,6,7)val rdd = sc.paralleize(arr,4) //并行化程度是4//默认是根据集群的情况来设置分区,建议一个cpu分2-4个partition

第二种方式:使用本地文件或者HDFS创建RDD
textfile来读取文件创建RDD,默认情况下每一个Block创建一个partition,分区只能比block多

第三种方式:使用其他的RDD生成RDD

RDD持久化

可以将RDD持久化到内存中,只需要调用cache()或者persist()方法即可
unpersist方法是清除缓存
持久化策略:
StorageLevel[
Memory_Only //只有内存 默认情况
memory_AND_disk //内存和磁盘
MEMORY_ONLY_SER //内存的序列化存储
MEMORY_ADN_DISK_SER //内存和磁盘的序列化存储
DISK_ONLY //磁盘存储
MEMORY_ONLY_2 //表示会存储两份,另一份是备份
]
以下的这几种方式不建议使用:
memory_AND_disk //内存和磁盘
MEMORY_ONLY_SER //内存的序列化存储
MEMORY_ADN_DISK_SER //内存和磁盘的序列化存储
DISK_ONLY //磁盘存储
还不如从新计算一次

原创粉丝点击