- 需求描述
本次实验主要熟悉Spark的RDD基本操作及键值对操作和使用RDD编程解决实际具体问题的方法。分析数据表,通过RDD编程完成一系列实例,包括RDD的创建、操作API、持久化和分区等。
实验题目:
1.请根据给定的实验数据,在pyspark中通过编程来计算以下内容:
(1)该系总共有多少学生;
(2)该系共开设了多少门课程;
(3)Tom同学的总成绩平均分是多少;
(4)求每名同学的选修的课程门数;
(5)该系DataBase课程共有多少人选修;
(6)各门课程的平均分是多少;
(7)使用累加器计算共有多少人选了DataBase这门课。
2.编写独立应用程序实现数据去重
对于两个输入文件A和B,编写Spark独立应用程序,对两个文件进行合并,并剔除其中重复的内容,得到一个新文件C。
3. 编写独立应用程序实现求平均值问题
每个输入文件表示班级学生某个学科的成绩,每行内容由两个字段组成,第一个是学生名字,第二个是学生的成绩;编写Spark独立应用程序求出所有学生的平均成绩,并输出到一个新文件中。
- 环境介绍
实验主机:Windows10操作系统
虚拟机寄居架构:Oracle VM VirtualBox
实验所需软件:
Ubuntu版本:16.04
Spark版本:2.1.0
Python版本:3.8.5
Hadoop版本:2.7.1
JDK版本:1.8
Maven版本:3.3.9
Scala 版本:Scala IDE(Eclipse4.7.0,Maven,Scala,sbt)
实验是否需要联网:是
其他设备:交换机,网线
- 数据来源描述
数据来源于Spark编程基础(Python版)官