/*
* union 表示并集,与数学概念里的不同处在于,它可以重复,也就是两个集合的所有元素
*/
@Test
def unionTest: Unit ={
val rdd1 = sc.parallelize(Seq(1,2,3,4,5))
val rdd2 = sc.parallelize(Seq(3,4,5,6,7))
rdd1.union(rdd2)
.collect()
.foreach(println(_)) // 1 2 3 4 5 3 4 5 6 7
}
/*
* intersection 表示交集
*/
@Test
def intersectionTest: Unit ={
val rdd1 = sc.parallelize(Seq(1,2,3,4,5))
val rdd2 = sc.parallelize(Seq(3,4,5,6,7))
rdd1.intersection(rdd2)
.collect()
.foreach(println(_)) // 3 4 5
}
/*
* subtract 表示差集, a 差 b --- a中独有的元素 ;b 差 a --- b 中独有的元素
*/
@Test
def subtractTest: Unit ={
val rdd1 = sc.parallelize(Seq(1,2,3,4,5))
val rdd2 = sc.parallelize(Seq(3,4,5,6,7))
rdd1.subtract(rdd2)
.collect()
.foreach(println(_)) // 1 2
}