Spark 的join 什么时候是宽依赖什么时候是窄依赖
题目:
参考下面代码:
1.两个打印语句的结果是什么,对应的依赖是宽依赖还是窄依赖,为什么会是这个结果;
2.join 操作何时是宽依赖,何时是窄依赖;
import org.apache.spark.rdd.RDD
import org.apache.spark.{
HashPartitioner, SparkConf, SparkContext}
object JoinDemo2 {
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setAppName(this.getClass.getCanonicalName.init).setMaster("local[*]")
val sc = new SparkContext(conf)
sc.setLogLevel("WARN")
val random = scala.util.Random
val col1 = Range(1, 50).map(idx => (random.nextInt(10), s"user$idx"))
val col2 = Array((0, "BJ"), (1, "SH"), (2, "GZ"), (3, "SZ"), (4, "TJ"), (5, "CQ"), (6, "HZ"), (7, "NJ"),