首页 > 解决方案 > 我在 Spark-Scala 中有一个查询

问题描述

我在 spark-scala 中尝试了以下方法。

逻辑:

如果 Data1 中的代码 = Data2 中的代码,则必须将记录写入输出文件。所以基于这个条件4*28行正在写入。

有没有办法优化下面的代码来分组数据?

.join(Data1,
 col("Code") === col("Code"), "inner")
 .selectExpr("Id" ,
            "Date",
            "Code"
             ).as[OutData]
Data1
+---------------+------------
|Id             |Code     
+---------------+------------
|0839           |06869242986
|4395           |06869242986
|3796           |06869242986
|3592           |06869242986
+---------------+------------

Data2
+---------------+------------
|Date           |Code     
+---------------+------------
|202050         |06869242986
|202051         |06869242986
+---------------+------------

OutData
+---------------+-------+------------
|Id             |Date   |Code
+---------------+-------+------------
|0839           |202050 |06869242986
|4395           |202050 |06869242986
|3796           |202050 |06869242986
|3592           |202050 |06869242986
|0839           |202051 |06869242986
|4395           |202051 |06869242986
|3796           |202051 |06869242986
|3592           |202051 |06869242986
+---------------+-------+------------

标签: scalaapache-spark

解决方案


推荐阅读