不多说,直接上干货!

前期博客

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") 

  第一次运行需要花费比较多的时间。

Zeppelin的入门使用系列之使用Zeppelin来创建临时表UserTable(三)的更多相关文章

  1. Zeppelin的入门使用系列之使用Zeppelin来运行Spark SQL(四)

    不多说,直接上干货! 前期博客 Zeppelin的入门使用系列之使用Zeppelin来创建临时表UserTable(三) 1. 运行年龄统计的Spark SQL (1)  输入Spark SQL时,必 ...

  2. Zeppelin的入门使用系列之使用Zeppelin运行shell命令(二)

    不多说,直接上干货! 前期博客 Zeppelin的入门使用系列之创建新的Notebook(一) 接下来,我将以ml-100k数据集,示范如何使用Spark SQL进行数据分析与数据可视化 因为 [ha ...

  3. Zeppelin的入门使用系列之创建新的Notebook(一)

    不多说,直接上干货! 前期博客 hadoop-2.6.0.tar.gz + spark-1.6.1-bin-hadoop2.6.tgz + zeppelin-0.5.6-incubating-bin- ...

  4. Zeppelin的入门使用系列之创建新的Notebook

    前期博客 hadoop-2.6.0.tar.gz + spark-1.6.1-bin-hadoop2.6.tgz + zeppelin-0.5.6-incubating-bin-all.tgz(mas ...

  5. WPF入门教程系列八——布局之Grid与UniformGrid(三)

    五. Grid Grid顾名思义就是“网格”,它的子控件被放在一个一个实现定义好的小格子里面,整齐配列. Grid和其他各个Panel比较起来,功能最多也最为复杂.要使用Grid,首先要向RowDef ...

  6. WPF入门教程系列二十三——DataGrid示例(三)

    DataGrid的选择模式 默认情况下,DataGrid 的选择模式为“全行选择”,并且可以同时选择多行(如下图所示),我们可以通过SelectionMode 和SelectionUnit 属性来修改 ...

  7. Spark入门实战系列--10.分布式内存文件系统Tachyon介绍及安装部署

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 .Tachyon介绍 1.1 Tachyon简介 随着实时计算的需求日益增多,分布式内存计算 ...

  8. WPF入门教程系列三——Application介绍(续)

    接上文WPF入门教程系列二——Application介绍,我们继续来学习Application 三.WPF应用程序的关闭 WPF应用程序的关闭只有在应用程序的 Shutdown 方法被调用时,应用程序 ...

  9. WPF入门教程系列二——Application介绍

    一.Application介绍 WPF和WinForm 很相似, WPF与WinForm一样有一个 Application对象来进行一些全局的行为和操作,并且每个 Domain (应用程序域)中仅且只 ...

随机推荐

  1. linux 命令:crontab

    一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动c ...

  2. zero to one (4)

    复盘--天下武功唯快不破 There is no martial art is indefectible, while the fastest speed is the only way for lo ...

  3. Azure一个Cloud Service支持多个公网地址

    Azure刚刚发布在同一个Cloud Service下支持多个公网IP地址的功能. 这个功能主要是用于: 当相同的端口需要公用相同的LoadBalance时. 比如: 一种使用场景是多组Web服务器被 ...

  4. java 最佳实践

    一: 不要直接new一个thread,应当使用线程池.使用线程池的时候应当对线程数量大小合理设置,一般最大不超过50个,当然还需要考虑你的IO和CPU,怎么分析网上搜搜吧. 二:容器类变量,如果变化比 ...

  5. SQL大全(1)

    实用SQL语句大全 一.基础 1.创建数据库 create database 数据库名 2.删除数据库 drop database 数据库名 3.增加列 alter table 表名 add 列名 类 ...

  6. springboot集成报错,想要集成tk.mybatis报错,反射方法异常

    在添加注释 @MapperScan("com.leyou.item.mapper")的时候,如果不小心就会导包倒错应该导成 import tk.mybatis.spring.ann ...

  7. 如何查看Mysql event事件是否启用

    mysql> show variables like 'event_scheduler';+-----------------+-------+| Variable_name   | Value ...

  8. HDU - 6201 transaction transaction transaction(树形dp取两点)

    transaction transaction transaction Kelukin is a businessman. Every day, he travels around cities to ...

  9. 为什么要用babel-polyfill

    1.为什么要用babel-polyfill Babel默认只转换新的JavaScript句法(syntax),而不转换新的API,比如 Iterator.Generator.Set.Maps.Prox ...

  10. 715. Range Module

    A Range Module is a module that tracks ranges of numbers. Your task is to design and implement the f ...