spark實驗四


一、實驗目的
(1)熟悉 Spark 的 RDD 基本操作及鍵值對操作;
(2)熟悉使用 RDD 編程解決實際具體問題的方法。
二、實驗平台
操作系統:Ubuntu16.04
Spark 版本:2.1.0
三、實驗內容和要求
1.spark-shell 交互式編程
請到本教程官網的“下載專區”的“數據集”中下載 chapter5-data1.txt,該數據集包含
了某大學計算機系的成績,數據格式如下所示:
Tom,DataBase,80
Tom,Algorithm,50
Tom,DataStructure,60
Jim,DataBase,90
Jim,Algorithm,60
Jim,DataStructure,80
……
請根據給定的實驗數據,在 spark-shell 中通過編程來計算以下內容:
(1)該系總共有多少學生;
主講教師:林子雨 http://www.cs.xmu.edu.cn/linziyu 第 1 頁廈門大學林子雨,賴永炫,陶繼平 編著《Spark 編程基礎(Scala 版)》 教材配套機房上機實驗指南
實驗 4 RDD 編程初級實踐
(2)該系共開設來多少門課程;
(3)Tom 同學的總成績平均分是多少;
(4)求每名同學的選修的課程門數;
(5)該系 DataBase 課程共有多少人選修;
(6)各門課程的平均分是多少;
(7)使用累加器計算共有多少人選了 DataBase 這門課。
2.編寫獨立應用程序實現數據去重
對於兩個輸入文件 A 和 B,編寫 Spark 獨立應用程序,對兩個文件進行合並,並剔除其
中重復的內容,得到一個新文件 C。下面是輸入文件和輸出文件的一個樣例,供參考。
輸入文件 A 的樣例如下:
20170101 x
20170102 y
20170103 x
20170104 y
20170105 z
20170106 z
輸入文件 B 的樣例如下:
20170101 y
20170102 y
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
3.編寫獨立應用程序實現求平均值問題
每個輸入文件表示班級學生某個學科的成績,每行內容由兩個字段組成,第一個是學生
名字,第二個是學生的成績;編寫 Spark 獨立應用程序求出所有學生的平均成績,並輸出到
一個新文件中。下面是輸入文件和輸出文件的一個樣例,供參考。
Algorithm 成績:
小明 92
小紅 87
主講教師:林子雨 http://www.cs.xmu.edu.cn/linziyu 第 2 頁廈門大學林子雨,賴永炫,陶繼平 編著《Spark 編程基礎(Scala 版)》 教材配套機房上機實驗指南
實驗 4 RDD 編程初級實踐
主講教師:林子雨 http://www.cs.xmu.edu.cn/linziyu 第 3 頁
小新 82
小麗 90
Database 成績:
小明 95
小紅 81
小新 89
小麗 85
Python 成績:
小明 82
小紅 83
小新 94
小麗 91
平均成績如下:
(小紅,83.67)
(小新,88.33)
(小明,89.67)
(小麗,88.67)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM