0
私はいくつかのRDDの和集合を得ようとしています。 RDDはSparkContext.textFile経由で読み込まれていますが、ファイルシステム上には存在しないものもあります。存在しないかもしれないRDDの和集合を見つける
val rdd1 = Try(Repository.fetch(data1Path))
val rdd2 = Try(Repository.fetch(data2Path))
val rdd3 = Try(Repository.fetch(data3Path))
val rdd4 = Try(Repository.fetch(data4Path))
val all = Seq(rdd1, rdd2, rdd3, rdd4)
val union = sc.union(all.map {case Success(r) => r})
val results = union.filter(some-filter-logic).collect
しかしによる遅延評価に、これらすべてのTry
の文は関係なく、ファイルが存在しているかどうかのSuccess
に評価し、私はcollect
が呼ばれた時に評価FileNotFoundException
で終わります。
方法はありますか?