不多说,直接上干货!
前期博客
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")
第一次运行需要花费比较多的时间。