当调用org.apache.spark.sql.Dataset#persist()
时,Spark实际上是否会缓存Dataset
?否则将在Dataset
上调用某些终端操作(例如count
)时懒惰地缓存。
,因为SPARK Dataset.persist
中的所有缓存操作都是懒惰的,只有评估的标记是缓存的标记。
与RDD相比的主要区别在于,评估很难推理。请参阅开发人员列表上的相关讨论:will .count()总是触发对每一行的评估?