Spark也支持將數據集放入集群的內存中緩存起來. 當數據重復訪問時特別有用, 比如查詢一個小的 “hot”數據集或者運行一個交互式算法PageRank. 看一個簡單的例子, 我們把上面的linesWithSpark數據集緩存起來:
~~~
scala> linesWithSpark.cache()
res7: spark.RDD[String] = spark.FilteredRDD@17e51082
scala> linesWithSpark.count()
res8: Long = 15
scala> linesWithSpark.count()
res9: Long = 15
~~~
當然使用Spark緩存一個100行的文本文件看起來有些傻,我們只是做個示范。 你可以將它用在非常大的數據集上,即使它們可能橫跨幾十甚至上百個節點。你也可以使用bin/spark-shell交互式實現此功能, 就像開發指南中描述的那樣。