20170103 x
20170104 z
20170105 y
根据输入的文件 A 和 B 合并得到的输出文件 C 的样例如下:
20170101 x
20170101 y
20170102 y
20170103 x
20170104 y
20170104 z
20170105 y
20170105 z
20170106 z

编写文件A B

spark读取pg_大数据


配置编译选项

spark读取pg_学习_02


编译代码

spark读取pg_面试_03


使用/software/spark-3.4.0-bin-hadoop3/bin/spark-submit --class “RemDup” /software/RemDup/target/scala-2.12/remove-duplication_2.12-1.0.jar 命令运行jar包

运行

spark读取pg_学习_04


查看运行结果

spark读取pg_大数据_05

4. 编写独立应用程序实现求平均值问题

每个输入文件表示班级学生某个学科的成绩,每行内容由两个字段组成,第一个是学生名字,第二个是学生的成绩;编写 Spark 独立应用程序求出所有学生的平均成绩,并输出到一个新文件中。下面是输入文件和输出文件的一个样例,供参考。

Algorithm 成绩:
小明 92
小红 87
小新 82
小丽 90
Database 成绩:
小明 95
小红 81
小新 89
小丽 85
Python 成绩:
小明 82
小红 83
小新 94
小丽 91
平均成绩如下:
(小红,83.67)
(小新,88.33)
(小明,89.67)
(小丽,88.67)

编译被操作文件 Algorithm database python

spark读取pg_大数据_06


编写代码文件

spark读取pg_学习_07

编写配置文件

spark读取pg_大数据_08


程序打包

spark读取pg_大数据_09


使用命令/software/spark-3.4.0-bin-hadoop3/bin/spark-submit --class “AvgScore” /software/AvgScore/target/scala-2.12/average-score_2.12-1.0.jar运行程序

spark读取pg_面试_10


查看结果

spark读取pg_学习_11

出现的问题

问题一

运行start-all命令时spark报错
说缺少依赖

问题二

在etc/profile中更改完环境后

Source命令刷新文件仍然出现路径配置错误

spark读取pg_面试_12

问题三

在用sbt编译的过程中报错

spark读取pg_spark读取pg_13

解决方案

问题一

在下载安装包时版本选择错误

spark读取pg_大数据_14


将安装包换为

spark读取pg_面试_15

问题二

因为之前开启了两个窗口进行命令操作

spark读取pg_学习_16


在一个窗口刷新在另一个窗口使用start-all命令

于是在同一个窗口source一下

spark读取pg_spark_17

成功启动,问题解决

问题三

spark读取pg_spark读取pg_18

spark读取pg_学习_19