Pan*_*005 6 scala apache-spark
不知所措.我有两个RDD,并希望在它们上生成结果RDD,如下所示.
val rdd1 = Array(1, 2)
val rdd2 = Array(a, b, c)
val resultRDD = [(1,a), (1,b), (1,c), (2,a), (2,b), (2,c)]
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我在上面生成resultRDD时需要使用哪些转换或操作.仅供参考,我是用scala写的.
编辑
谢谢.火花笛卡尔对我有用,如下所示.
val data = Array('a', 'b')
val rdd1 = sc.parallelize(data)
val data2 = Array(1, 2, 3)
val rdd2 = sc.parallelize(data2)
rdd1.cartesian(rdd2).foreach(println)
Run Code Online (Sandbox Code Playgroud)
def cartesian[U](other: RDD[U])(implicit arg0: ClassTag[U]): RDD[(T, U)]
Run Code Online (Sandbox Code Playgroud)
返回此RDD的笛卡尔乘积和另一个,即所有元素对(a,b)的RDD,其中a在此处,b在其他元素中.
| 归档时间: |
|
| 查看次数: |
465 次 |
| 最近记录: |