不多說,直接上干貨!
前期博客
Zeppelin的入門使用系列之使用Zeppelin運行shell命令(二)
我們必須要先使用Spark 語句創建臨時表UserTable,后續才能使用Spark SQL進行數據分析以及數據可視化。
1、加載用戶數據文件到userText
var userText = sc.textFile("file:/home/hadoop/data/zeppelin/ml-100k/u.user")
2、創建UserTable類
UserTable類的字段:序號、年齡、職業、郵政編碼
case class UserTable(id:String , age:String , gender:String , occupation:String , zipcode:String)
3、創建userRDD
以“|”符號分隔字段讀取每一個字段數據,然后使用map命令轉換為用戶數據表: UserTable(s(0),s(1),s(2),s(3),s(4))。
val userRDD = userText.map(s=>s.split("\\|")).map(s=>UserTable(s(0),s(1),s(2),s(4)))
4、將userRDD登錄為臨時表UserTable
將userRDD登錄為臨時表UserTable,后續可以使用SparkSQL讀取這個數據表,用於數據分析以及數據可視化。
userRDD.toDF().registerTempTable("UserTable")
5、輸出導入記錄數
println("導入:" + registerTempTable("UserTable")
第一次運行需要花費比較多的時間。