PySpark实战:cache操作
来自CloudWiki
介绍
cache操作会使用默认存储级别(MEMORY_ONLY)保留该RDD,
防止多次进行创建,从而提高效率。
它的调用形式为rdd.cache()
代码
import findspark findspark.init() ############################################## from pyspark.sql import SparkSession spark = SparkSession.builder \ .master("local[1]") \ .appName("RDD Demo") \ .getOrCreate(); sc = spark.sparkContext ############################################# #0...999 rdd =sc.parallelize(range(1000)) #缓存 rdd.cache() #最大值999 print(rdd.max()) ############################################## sc.stop()
- rdd.cache()在RDD对象上进行缓存操作,后续的RDD操作会直接从内存中加载数据进行计算
- Spark当中还有一个类似的缓存操作rdd.persist(storageLevel),它可以制定存储级别storageLevel
输出
999