4.1 Spark SQL概述、数据帧与数据集

该文详细介绍了如何在Spark环境中使用SparkShell操作数据,包括加载数据为Dataset,添加元数据,转换为DataFrame,进行数据的投影、过滤、统计、排序和重命名等操作,以及如何基于数据帧执行SQL查询,创建并操作临时视图。
摘要由CSDN通过智能技术生成

一、数据帧 - DataFrame

(一)准备工作

1、准备数据文件
在这里插入图片描述
在这里插入图片描述
2、启动Spark Shell
在这里插入图片描述

(二)加载数据为Dataset

1、读文件得数据集
在这里插入图片描述
2、显示数据集内容
在这里插入图片描述
3、显示数据集模式
在这里插入图片描述

(三)给数据集添加元数据信息

1、定义学生样例类
在这里插入图片描述
在这里插入图片描述
2、导入隐式转换
在这里插入图片描述
3、将数据集转换成学生数据集
在这里插入图片描述
4、对学生数据集进行操作
(1)显示数据集内容
在这里插入图片描述
(2)打印数据集模式
在这里插入图片描述
(3)对数据集进行投影操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(4)对数据集进行过滤操作
在这里插入图片描述
显示年龄在[19, 20]之间的记录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(5)对数据集进行统计操作
求20岁以上的女生人数
在这里插入图片描述分组统计男女生总年龄
在这里插入图片描述
分组统计男女生平均年龄
在这里插入图片描述
分组统计男女生最大年龄
在这里插入图片描述
分组统计男女生最小年龄
在这里插入图片描述
(6)对数据集进行排序操作
按年龄升序排列
在这里插入图片描述
按年龄降序排列
在这里插入图片描述
在这里插入图片描述
先按性别升序排列,再按年龄降序排列
在这里插入图片描述
在这里插入图片描述
(7)重命名数据集字段
在这里插入图片描述

(四)将数据集转为数据帧

1、将数据集转为数据帧
在这里插入图片描述
2、对学生数据帧进行操作
(1)显示数据帧内容
在这里插入图片描述

(2)显示数据帧模式信息
在这里插入图片描述
(3)对数据帧进行投影操作
在这里插入图片描述
(4)对数据帧进行过滤操作
查询年龄在19岁以上的记录
在这里插入图片描述
查询20岁以上的女生记录
在这里插入图片描述
(5)对数据帧进行统计操作
统计学生数据帧总记录数
在这里插入图片描述
分组统计男女生总年龄
在这里插入图片描述
分组统计男女生平均年龄
在这里插入图片描述
分组统计男女生最大年龄
在这里插入图片描述
分组统计男女生最小年龄
在这里插入图片描述分组统计男女生人数
在这里插入图片描述

(6)对数据帧进行排序操作
对年龄升序排列
在这里插入图片描述
对年龄降序排列
在这里插入图片描述
先按性别升序,再按年龄降序
在这里插入图片描述
(7)重命名数据帧字段
在这里插入图片描述

(五)基于数据帧进行SQL查询

1、基于数据帧创建临时视图
基于学生数据帧studentDF,创建一个临时视图student,就可以对student视图进行SQL操作
在这里插入图片描述
如果临时视图存在,使用这个命令就会报错
在这里插入图片描述
2、使用spark对象执行SQL查询
(1)查询全部表记录
在这里插入图片描述
(2)显示数据表结构
在这里插入图片描述
(3)对表进行投影操作
在这里插入图片描述
(4)对表进行选择操作
查询年龄在19岁以上的记录
在这里插入图片描述
查询20岁以上的女生记录
在这里插入图片描述
(5)对表进行统计操作
查询学生表总记录数
在这里插入图片描述
分组统计男女生总年龄
在这里插入图片描述
分组统计男女生平均年龄
在这里插入图片描述
分组统计男女生最大年龄
在这里插入图片描述
(6)对表进行排序操作
按年龄升序排列
在这里插入图片描述
先按性别升序,再按年龄降序
在这里插入图片描述
(7)重命名数据表字段
在这里插入图片描述
无法解析中文别名

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值