1 创建一个数组,每个值×10
scala> val arr =Array(1,2,3,4,5)
scala > arr.map(_ * 10)
数组并行化转成RDD
scala> val rdd = sc.parallelize(arr) //数组并行化转成RDD(试验)
scala> val rdd2=rdd.map(_ * 10) //只保存函数
collect 触发计算
scala> rdd2.collect //输出出来
scala> val rdd3 = rdd.filter(_ % 2 == 0 ) //得到偶数形成新的RDD
scala> sc.makeRDD(List(2,3,4,5,12)) //将一个scala集合变换成RDD(试验)
排序规则不影响数据类型
scala> val rdd2 = sc.parallelize(List(2,3,4,1,6,9,10)).map(_*2).sortBy(x=>x+"",true)//排序规则不影响数据类型
scala> val rdd2 = sc.parallelize(List(2,3,4,1,6,9,10)).map(_*2).sortBy(x=>x.toString(),true)//排序规则不影响数据类型
scala> val rdd4=sc.parallelize(Array("a b c","d e f","h i j"))//RDD[String]
scala> rdd4.map(_.split(" ")) //RDD[Array[String]]
scala> rdd4.flatMap(_.split(" ")) //RDD[String] RDD并没有数据,只是记住逻辑
scala> val rdd5=sc.parallelize(List(List("a b c","w e r"),List("d e f","t y u"),List("h i j","z x c")))//RDD[List[String]]
scala> rdd5.flatMap(_.flapMap(_.split(" "))) //RDD[String]
union并集
scala> val rdd6=sc.parallelize(List(2,3,4,6))
scala> val rdd7=sc.parallelize(List(1,2,3,4))
scala> rdd6.union(rdd7) //不会产生结果,
intersection交集
scala> rdd6 intersection rdd7 // 结果是Array(3,4)
网友评论