Hive实战:学生信息排序

文章目录

  • 一、实战概述
  • 二、提出任务
  • 三、完成任务
    • (一)准备数据
      • 1、在虚拟机上创建文本文件
      • 2、上传文件到HDFS指定目录
    • (二)实现步骤
      • 1、启动Hive Metastore服务
      • 2、启动Hive客户端
      • 3、基于HDFS数据文件创建Hive外部表
      • 4、利用Hive SQL实现按年龄降序排列
  • 四、拓展练习
    • 任务:学生信息排序,先按性别升序,再按年龄降序

一、实战概述

  • 本次实战以Apache Hive数据仓库工具为核心,通过处理存储在HDFS上的学生信息表实现数据排序操作。首先,创建并上传包含8条记录的学生表数据至HDFS的指定目录,每条记录由姓名、性别、年龄、手机和专业五个字段组成。随后,启动Hive Metastore服务与客户端,并基于HDFS上的文本文件建立了一个外部表t_student。

  • 在实战任务中,主要运用Hive SQL进行数据查询与排序。首先展示了如何按年龄降序排列学生信息,直观展示了Hive对大规模结构化数据的强大处理能力。此外,还进行了拓展练习,演示了更为复杂的排序需求,即先按性别升序再按年龄降序排序学生信息。

  • 整个实战过程通过实际操作详细解析了从数据准备、到使用Hive进行数据建模、再到执行SQL查询及排序的一系列步骤,旨在帮助学习者深入理解并掌握Hive在大数据处理场景中的应用,特别是在数据查询、分析与排序方面的功能与优势。

二、提出任务

  • 学生表,包含五个字段(姓名、性别、年龄、手机、专业),有8条记录
姓名 性别 年龄 手机 专业
李文丽 19 15892943440 大数据应用
张三丰 20 15890903456 人工智能应用
郑晓琳 18 18867890234 软件技术
唐宇航 22 15856577890 计算机应用
陈燕文 21 13956576783 软件技术
童安格 19 15889667890 大数据应用
肖雨涵 20 15857893452 软件技术
冯晓华 18 18856784560 大数据应用
  • 使用Hive计算框架,学生信息按年龄降序排列结果

    在这里插入图片描述

三、完成任务

(一)准备数据

1、在虚拟机上创建文本文件

  • 在master虚拟机上创建student.txt文件

    在这里插入图片描述

2、上传文件到HDFS指定目录

  • 创建/sortstudent/input目录,执行命令:hdfs dfs -mkdir -p /sortstudent/input

    在这里插入图片描述

  • 将文本文件student.txt上传到HDFS的/sortstudent/input目录

    在这里插入图片描述

(二)实现步骤

1、启动Hive Metastore服务

  • 执行命令:hive –service metastore &,在后台启动metastore服务

    在这里插入图片描述

2、启动Hive客户端

  • 执行命令:hive,看到命令提示符hive>

    在这里插入图片描述

3、基于HDFS数据文件创建Hive外部表

  • 创建外部表t_student,执行命令:

  • create external table t_student ( name string, gender string, age int, phone string, major string ) row format delimited fields terminated by ‘ ‘ location ‘/sortstudent/input’;

    在这里插入图片描述

  • 在MySQL的hive数据库的TBLS表里可以查看外部表t_student对应的记录

    在这里插入图片描述

  • 查看学生表全部记录,执行语句:select * from t_student;

    在这里插入图片描述

4、利用Hive SQL实现按年龄降序排列

  • 执行语句:select * from t_student order by age desc;

    在这里插入图片描述

四、拓展练习

任务:学生信息排序,先按性别升序,再按年龄降序

  • 运行结果,如下图所示

    在这里插入图片描述

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/3a35803da2.html