大数据全系列 教程
1869个小节阅读:466.7k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
package com.itbaizhan.rdd
//1.导入类
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
object RddUnion {
def main(args: Array[String]): Unit = {
//2.构建SparkConf对象,并设置本地运行和程序名称
val conf: SparkConf = new SparkConf().setMaster("local[1]").setAppName("union")
//3.使用conf对象构建SparkContet对象
val sc = new SparkContext(conf)
//5.创建3个RDD对象
val rdd1: RDD[Int] = sc.parallelize(Array(1, 2, 3, 4))
val rdd2: RDD[Int] = sc.parallelize(Array(3, 4, 5, 6))
val rdd3: RDD[String] = sc.parallelize(Array("x", "y"))
//6.union算子将两个rdd对象元素做并集计算,并生成一个新的rdd对象
val result12: RDD[Int] = rdd1.union(rdd2)
val result21: RDD[Int] = rdd2.union(rdd1)
//7.union算子不会去重,无方向性
println(result21.collect().mkString(","))
println(result12.collect().mkString(","))
//8.使用union做并集计算的两个rdd的数据类型要一致,否则出错
//rdd1.union(rdd3)
//4.关闭sc对象
sc.stop()
}
}
实时效果反馈
1. 以下关于rdd1.union(rdd2)
的描述错误的是:
A union算子将rdd1和rdd2的所有元素聚合后返回一个新的RDD。
B 将rdd1和rdd2的位置调换后,结果一样。
C union算子是不会去重的。
D rdd1和rdd2中的元素类型可以不同。
答案:
1=>D rdd1和rdd2中的元素类型需要保持一致