HiveQL:数据操作

实验目的

  1. 理解LOAD DATA语句:向数据表内加载文件
  2. 理解INSERT语句:将查询结果插入数据表或者覆盖数据表
  3. 硬件环境要求

实验环境

PC机至少4G内存,硬盘至少预留50G空间。

  1. 软件要求

已安装并启动Hadoop

已安装并启动Hive

 

实验要求

  1. 应用LOAD DATA语句向数据表内加载文件
  2. 应用INSERT语句将查询结果插入数据表或者覆盖数据表

实验步骤

第6章 HiveQL:数据操作

1     实验准备

l  本地/usr/local/data目录下创建文件sample.txt,并插入以下内容:

1201   Gopal  45000  Technical manager

1202   Manis  45000  Proof reader 

1203   Masth  40000  Technical writer 

1204   Kiran     40000  Hr Admin 

1205   Kranthi    30000  Op Admin  

l  创建employee表

 

 

 

所用命令或代码:

# create table employee (id int,name string,salary int,position string) row  format  delimited  fields  terminated  by '\t' ;

2     应用LOAD DATA语句向数据表内加载文件

将本地/usr/local/data目录下文件sample.txt内容装载到employee表中:

 

 

 

所用命令或代码:

#  LOAD DATA LOCAL INPATH '/usr/local/data/sample.txt' overwrite into table employee;

查询表内数据:

 

 

 

所使用命令代码:

# select * from employee;

3     应用INSERT语句将查询结果插入数据表

l  insert into方式插入一条数据:

 

 

 

所使用命令代码:

# insert into employee(id,name,salary ,position ) values(1206,'tom',50000,'admin');

查询插入结果:

 

 

 

l  应用INSERT语句将查询结果插入数据表:

创建备份表employee1:

 

 

 

所使用命令:

# create table employee1 (id int,name string,salary int,position string) row  format  delimited  fields  terminated  by '\t' ;

将查询结果追加到表:

 

 

 

所使用命令:

# INSERT INTO  TABLE employee1 select * from employee;

查询插入结果:

 

 

 

再次插入数据:

 

 

 

查询结果显示:

 

 

 

4     应用INSERT语句将查询结果覆盖数据表

应用INSERT语句将查询结果覆盖目的数据表

 

 

 

所使用命令:

# INSERT overwrite  TABLE employee1 select * from employee;

查询结果显示:

 

 

 

INSERT语句后跟overwrite将覆盖目的数据表的数据。

总结与提高

  1. 提高学生的动手操作能力,使用HiveQL中LOAD DATA语句向数据表内加载文件;使用INSERT语句将查询结果插入数据表或者覆盖数据表。

 

posted @ 2020-02-08 09:29  silvan_happy  阅读(329)  评论(0编辑  收藏  举报