我正在做一个关于以下问题的测验:
此代码中有多少个阶段?
val unhcrRDD = sc.textFile("path/to/file/file.csv").map(x=>x.split(","))
val country = unhcrRDD.map(x=>(x(0), x(3))
country.take(10)
我假设有3个阶段(一个是文本文件读取时,一个是用逗号分割行时的一个,另一个是选择字段0和3时)。
然而,答案是:
即使有更多的RDD,也只有一个阶段。在父级和RDD之间没有传输数据,因此RDD会折叠成一个阶段。
这是什么意思? 你怎么只有一个阶段?