我有一个for循环,我每次迭代都会得到一个RDD,我想保存以供以后使用。保存和访问这些RDD的最有效方法是什么?
提前感谢您的帮助!
答案 0 :(得分:0)
Samplecode,没有RDD和火花细节:
scala> val res = (for (i <- (1 to 10);
| j=2*i;
| k= s"i: $i j: $j") yield k)
res: scala.collection.immutable.IndexedSeq[String] = Vector(i: 1 j: 2, i: 2 j: 4, i: 3 j: 6, i: 4 j: 8, i: 5 j: 10, i: 6 j: 12, i: 7 j: 14, i: 8 j: 16, i: 9 j: 18, i: 10 j: 20)
scala> res(0)
res201: String = i: 1 j: 2
scala> res(1)
res202: String = i: 2 j: 4
所以只需产生你的RDD,并在Seq中收集它们以便以后使用。
你也可以产生多个val
yield (i, j, k)
稍后解构元组N,过滤它,分组等等。