Scala 如何在Spark中连续处理两个RDD?

Scala 如何在Spark中连续处理两个RDD?,scala,hadoop,apache-spark,Scala,Hadoop,Apache Spark,当我在Spark程序中达到资源限制时,我想将处理过程划分为迭代,并将每次迭代的结果上传到HDFS,如下所示 do something using first rdd upload the output to hdfs do something using second rdd upload the output to hdfs 但据我所知,Spark将尝试同时运行这两个。在处理第二个rdd之前,是否有方法等待第一个rdd的处理 在处理第二个rdd之前,是否有方法等待第一个rdd的处理 您有R

当我在Spark程序中达到资源限制时,我想将处理过程划分为迭代,并将每次迭代的结果上传到HDFS,如下所示

do something using first rdd
upload the output to hdfs

do something using second rdd
upload the output to hdfs
但据我所知,Spark将尝试同时运行这两个。在处理第二个rdd之前,是否有方法等待第一个rdd的处理

在处理第二个rdd之前,是否有方法等待第一个rdd的处理

您有RDD,为什么需要等待并再次从磁盘读取


在RDD上执行一些转换,在第一个操作中写入磁盘,然后继续使用相同的RDD执行第二个操作

我想我理解你的困惑。在单个RDD中,分区将彼此并行运行。但是,两个rdd将按顺序彼此运行(除非您编写其他代码)。

可能这样做,但我需要在程序中进行更多更改。您可以显示一些代码,但“第二个rdd”,我想您的意思是它最初来自第一个rdd。谁告诉您spark将尝试并行处理这两个rdd?那是不对的!那么这将被连续处理?是的!如果你测试过的话,你会知道的。太棒了。我马上会测试它。如果能有更多关于您如何处理数据的信息,那就太好了。第二个RDD是否依赖于第一个RDD?第二个RDD是第一个过程的结果还是完全不同的RDD?您将数据上传到HDFS是什么意思,它不在HDFS中?