文章目录
一、实战概述
-
本实战教程通过一系列Hive SQL操作,演示了如何在大数据环境下创建具有省市分区的大学表,并从本地文件系统加载不同地区的学校数据到对应分区。首先,创建名为
school的数据库并切换至该数据库;接着,在数据库中定义一个名为university的分区表,其结构包括ID和名称两列,并按照省份和城市进行物理分区。随后,在本地创建多个包含各省市区学校数据的文本文件。 -
在完成数据文件准备后,依次将各地区学校数据文件按省市分区加载到
university表中,利用LOAD DATA LOCAL INPATH语句实现数据高效地从本地导入到Hadoop分布式文件系统(HDFS)中的相应分区目录下。 -
最后,通过执行SQL查询语句验证数据加载的正确性,查看全表记录以及特定省份的所有记录,并通过HDFS命令行工具检查分区表对应的目录及文件。此外,还展示了如何在MySQL中查看Hive元数据信息,进一步理解Hive中分区表的实际存储结构和组织方式。整个实战过程旨在帮助用户掌握基于Hive的大规模数据管理和分区表应用技巧。
二、实战步骤
(一)创建学校数据库
- 执行语句:
create database school;

- 执行语句:
use school;,切换到school数据库

(二)创建省市分区的大学表
- 执行语句:
CREATE TABLE university (id INT, name STRING) PARTITIONED BY (province STRING, city STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ';

- 该SQL语句用于在支持分区功能的数据库系统(如Hive、Impala等基于Hadoop的数据仓库)中创建一个名为
university的表,并且定义了表的结构以及分区方案。不过,值得注意的是,标准的SQL语法并不直接支持PARTITIONED BY这样的关键字,这是大数据处理框架为了解决大规模数据存储和查询优化而扩展的语法。
CREATE TABLE university (
id INT,
name STRING
)
- 这部分定义了一个新表
university,它有两个列:
▪id列是整数类型(INT)。
▪name列是字符串类型(STRING)。</

最低0.47元/天 解锁文章
446

被折叠的 条评论
为什么被折叠?



