大数据从入门到实战 - Hive表DDL操作(一)

电玩女神 2023-01-06 05:30 221阅读 0赞

大数据从入门到实战 - Hive表DDL操作(一)

  • 一、关于此次实践
    • 1、实战简介
    • 2、全部任务
  • 二、实践详解
    • 1、第1关:Create/Alter/Drop 数据库
    • 2、第2关:Create/Drop/Truncate 表
    • 3、第3关:Alter 表/列
    • 4、第4关:表分区

叮嘟!这里是小啊呜的学习课程资料整理。好记性不如烂笔头,今天也是努力进步的一天。一起加油进阶吧!
在这里插入图片描述

一、关于此次实践

1、实战简介

Hive数据定义语言(Date Definition Language)包括 Create/Drop/Alter数据库、Create/Drop/Truncate表、Alter表/分区/列、Create/Drop/Alter视图、Create/Drop/Alter索引、Create/Drop函数、Create/Drop/Grant/Revoke角色和权限等内容。
在这里插入图片描述

2、全部任务

在这里插入图片描述

二、实践详解

1、第1关:Create/Alter/Drop 数据库

在这里插入图片描述

  1. #********* Begin *********#
  2. echo "
  3. CREATE DATABASE IF NOT EXISTS test1
  4. LOCATION '/hive/test1'
  5. WITH DBPROPERTIES('creator'='John','date'='2019-02-25');
  6. ALTER DATABASE test1 SET DBPROPERTIES('creator'='Marry');
  7. DROP DATABASE test1;
  8. "
  9. #********* End *********#

评测
在这里插入图片描述

2、第2关:Create/Drop/Truncate 表

在这里插入图片描述
student表结构:




































INFO TYPE COMMENT
Sno INT student sno
name STRING student name
age INT student age
sex STRING student sex
score STRUCT <Chinese:FLOAT,Math:FLOAT,English:FLOAT> student score

在这里插入图片描述

  1. #********* Begin *********#
  2. echo "
  3. CREATE DATABASE IF NOT EXISTS test2
  4. LOCATION '/hive/test2'
  5. WITH DBPROPERTIES ('creator'='Floret','date'='2020-11-16');
  6. CREATE TABLE IF NOT EXISTS test2.student(
  7. Sno INT COMMENT 'student sno',
  8. name STRING COMMENT 'student name',
  9. age INT COMMENT 'student age',
  10. sex STRING COMMENT 'student sex',
  11. score STRUCT<Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score')
  12. COMMENT 'students information table'
  13. TBLPROPERTIES ('creator'='Floret','date'='2020-11-16');
  14. CREATE TABLE IF NOT EXISTS student_info
  15. LIKE student;
  16. DROP TABLE IF EXISTS student;
  17. "
  18. #********* End *********#

评测
在这里插入图片描述

3、第3关:Alter 表/列

在这里插入图片描述




































INFO TYPE COMMENT
Sno INT student sno
name STRING student name
age INT student age
sex STRING student sex
score STRUCT <Chinese:FLOAT,Math:FLOAT,English:FLOAT> student score

在这里插入图片描述

  1. #********* Begin *********#
  2. echo "
  3. CREATE DATABASE IF NOT EXISTS test3
  4. LOCATION '/hive/test3'
  5. WITH DBPROPERTIES ('creator'='Floret','date'='2020-11-16');
  6. CREATE TABLE IF NOT EXISTS test3.student(
  7. Sno INT COMMENT 'student sno',
  8. name STRING COMMENT 'student name',
  9. age INT COMMENT 'student age',
  10. sex STRING COMMENT 'student sex',
  11. score STRUCT<Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score')
  12. COMMENT 'students information table'
  13. TBLPROPERTIES ('creator'='Floret','date'='2020-11-16');
  14. ALTER TABLE student RENAME TO student_info;
  15. ALTER TABLE student_info CHANGE age student_age INT COMMENT 'student age';
  16. ALTER TABLE student_info ADD COLUMNS (birthday STRING COMMENT 'student birthday');
  17. "
  18. #********* End *********#

评测
在这里插入图片描述

4、第4关:表分区

在这里插入图片描述

  1. #********* Begin *********#
  2. echo "
  3. CREATE DATABASE IF NOT EXISTS test4
  4. LOCATION '/hive/test4'
  5. WITH DBPROPERTIES('creator'='Floret','date'='2020-11-16');
  6. CREATE TABLE IF NOT EXISTS test4.student(
  7. Sno INT COMMENT 'student sno',
  8. name STRING COMMENT 'student name',
  9. age INT COMMENT 'student age',
  10. sex STRING COMMENT 'student sex',
  11. score STRUCT<Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score')
  12. COMMENT 'students information table'
  13. PARTITIONED BY (stu_year STRING,subject STRING)
  14. ROW FORMAT DELIMITED
  15. FIELDS TERMINATED BY '\t'
  16. COLLECTION ITEMS TERMINATED BY ','
  17. TBLPROPERTIES('creator'='Floret','date'='2020-11-16');
  18. ALTER TABLE student ADD PARTITION (stu_year='2018',subject='Chinese') LOCATION '/hive/test4/student/2018/Chinese'
  19. PARTITION (stu_year='2018',subject='Math') LOCATION '/hive/test4/student/2018/Math';
  20. ALTER TABLE student PARTITION (stu_year='2018',subject='Math') RENAME TO PARTITION (stu_year='2018',subject='English');
  21. ALTER TABLE student DROP IF EXISTS PARTITION (stu_year='2018',subject='Chinese');
  22. "
  23. #********* End *********#

评测
在这里插入图片描述

Ending!
更多课程知识学习记录随后再来吧!

  1. 就酱,嘎啦!

在这里插入图片描述

注:
人生在勤,不索何获。

发表评论

表情:
评论列表 (有 0 条评论,221人围观)

还没有评论,来说两句吧...

相关阅读