[场景] Spark对RDD执行一系列算子操作时,都会重新从头到尾计算一遍.如果中间结果RDD后续需要被被调用多次,可以显式调用 cache()和 persist(),以告知 Spark,临时保存之前的计算结果,这样后续多个RDD使用时,就不用重新计算该临时结果了,从而节约计算资源. 要注意cache和persist是惰性的,需要action算子来触发. [Spark的持久化级别] [选择一种最合适的持久化策略] 默认情况下,性能最高的当然是MEMORY_ONLY,但前提是内存必须足够足够大,可…