在使用Spark RDD时,我知道每次使用ShuffleRDD都会创建一个新阶段,但是当我们有多个动作时会创建一个新阶段?Spark DAG阶段数
例子:
val rdd1 = sc.textFile("<some_path").keyBy(x=>x.split(",")(1))
val rdd2 = sc.textFile("<some_path").keyBy(x=>x.split(",")(1))
val rdd3 = rdd1.join(rdd2)
rdd3.filter(x=><somecondition1>).saveAsTextFile("location1")
rdd3.filter(x=><somecondition2>).saveAsTextFile("location2")
现在1阶段将涉及到RDD1集,RDD2和rdd3任务,那么2阶段将有两种保存措施?