【踩坑】SparkSQL union/unionAll 函数的去重问题

【踩坑】SparkSQL union/unionAll 函数的去重问题

  • 测试数据
scala 复制代码
case class Employee(first_name:String)

val employeeDF1 = spark.createDataset(Seq( 
    Employee("Mary"), 
    Employee("Mandy"),
    Employee("Kurt")
))
val employeeDF2 = spark.createDataset(Seq( 
    Employee("Mary"), 
    Employee("Julie"), 
    Employee("Mandy"),
    Employee("Julie"), 
    Employee("Kurt")
))
  • 无论是union还是unionall都不会去重
scala 复制代码
employeeDF1.union(employeeDF2).show
scala 复制代码
employeeDF1.unionAll(employeeDF2).show
  • 当通过spark.sql执行方式时,union可以去重
scala 复制代码
employeeDF1.createOrReplaceTempView("ds1")
employeeDF2.createOrReplaceTempView("ds2")
scala 复制代码
spark.sql("select * from ds1 union select * from ds2").show
scala 复制代码
spark.sql("select * from ds1 union all select * from ds2").show
相关推荐
赵部长风向标2 小时前
在本地生活赛道,如何打造属于自己的业务护城河?
大数据
青云交2 小时前
Java 大视界 -- Java 大数据在智能教育学习社区互动模式创新与用户活跃度提升中的应用(426)
java·大数据·学习·flink 实时计算·智能教育社区·互动模式创新·用户活跃度
snowful world5 小时前
flink实验三:实时数据流处理(踩坑记录)
大数据·flink
B站_计算机毕业设计之家5 小时前
基于大数据的短视频数据分析系统 Spark哔哩哔哩视频数据分析可视化系统 Hadoop大数据技术 情感分析 舆情分析 爬虫 推荐系统 协同过滤推荐算法 ✅
大数据·hadoop·爬虫·spark·音视频·短视频·1024程序员节
面向星辰6 小时前
day07 spark sql
大数据·sql·spark
北邮-吴怀玉7 小时前
2.2.2.3 大数据方法论与实践指南-开源服务跟踪工具对比
大数据·开源
亚远景aspice8 小时前
亚远景热烈祝贺保隆科技通过ASPICE CL2评估
大数据·人工智能·物联网
赵谨言9 小时前
基于python大数据的城市扬尘数宇化监控系统的设计与开发
大数据·开发语言·经验分享·python
程序员小羊!9 小时前
Flink状态编程之算子状态(OperatorState)
大数据·flink
TaoSense10 小时前
Milvus向量数据库介绍
大数据·人工智能