cartesian:
将(arr2)里的数值分别对应到arr1的第一个值上,然后分别对应第二个,第三个,组成一个个的新集合,也就是我们常说的笛卡尔积
object CartesianTest {
def main(args: Array[String]): Unit = {
val conf=new SparkConf().setAppName("cratesian").setMaster("local")
val sc=new SparkContext(conf)
val arr1=sc.parallelize(Array(1,3,5))
val arr2=sc.parallelize(Array(2,4,6))
arr1.cartesian(arr2).collect.foreach(println)
}
}
结果:
(1,2)
(1,4)
(1,6)
(3,2)
(3,4)
(3,6)
(5,2)
(5,4)
(5,6)