scala - 我在 Spark-Scala 中有一个查询
问题描述
我在 spark-scala 中尝试了以下方法。
逻辑:
如果 Data1 中的代码 = Data2 中的代码,则必须将记录写入输出文件。所以基于这个条件4*2
;8
行正在写入。
有没有办法优化下面的代码来分组数据?
.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
+---------------+-------+------------
解决方案
推荐阅读
- python-3.x - Psycopg2-二进制问题
- ios - MapKit (macOS/iOS):MKPolyline 子类在 super.init(coordinates:count:) 时崩溃
- flutter - 有没有办法使用 Dart/Flutter 访问 ForEach 中的索引/键
- python - 我们如何在循环中添加输入,然后在其他嵌套循环中进一步打印这些输入?
- java - 具有设备管理员权限的 Android 应用程序是否需要运行时权限请求?
- c++ - std::tm 到 std::time_t 的转换在 1970 年之前的特定日期给出错误(c++)
- aws-lambda - AWS Lambda 缓存 DynamoDB 响应
- python - Python:为什么我不能将一个字符串从一个 df 复制到另一个?
- html - 如何让网页响应式?使用媒体查询,页面仍然没有响应
- php - 在 PHP 中将 sudo 命令作为 www-data 执行