Scala的join算子

来源:互联网 发布:keras 安装 windows 编辑:程序博客网 时间:2024/06/05 02:03

 1:使用Scala的算子join进行练习

val spark = SparkSession.builder().master("local[2]").appName("simple").getOrCreate()    val visit = spark.sparkContext.parallelize(List(("index.html","1.2.3.4"),("about.html","3,4,5,6"),("index.html","1.3.3.1"),("hello.html","1,2,3,4")),2);    val page = spark.sparkContext.parallelize(List(("index.html","home"),("about.html","about"),("hi.html","2.3.3.3")),2);    visit.join(page).foreach(println)    page.join(visit).foreach(println)



打印结果:

第一个join

(index.html,(1.2.3.4,home))(about.html,(3,4,5,6,about))(index.html,(1.3.3.1,home))
第二个join
(index.html,(home,1.2.3.4))(index.html,(home,1.3.3.1))(about.html,(about,3,4,5,6))

可见,join算子使用的是内连接的join,

以某一个表为基础,KEY相同的打印出来,不相同的不打印