聊聊Hive数据类型和简单使用

大数据
可以将本地文件导入到HIve中,我们先把文件上传到HDFS,然后使用HDFS将数据导入到Hive中。

Hive使用的语句是Hql,和sql百分之九十都是相近的,因此,只要对SQL比较熟悉的,Hql基本不用怎么学。

基本数据类型

「基本数据类型」

  • tinyint/smallint/int/bigint: 整数类型
  • float/double: 浮点数类型
  • boolean:布尔类型
  • string:字符串类型

「复杂数据类型」

  • Array:数组类型,由一系列相同数据类型的元素组成
  • Map:集合类型,包含key->value键值对,可以通过key来访问元素
  • Struct:结构类型,可以包含不同数据类型的元。这些元素可以通过"点语法"的方式来得到所需要的元素

「时间类型」

  • Date:从Hive0.12.0开始支持
  • Timestamp:从Hive0.8.0开始支持

常用DDL操作

查看数据列表

  1. show databases; 

 

使用数据库

  1. USE database_name; 

新建数据库

语法:

  1. CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name   --DATABASE|SCHEMA 是等价的 
  2.   [COMMENT database_comment] --数据库注释 
  3.   [LOCATION hdfs_path] --存储在 HDFS 上的位置 
  4.   [WITH DBPROPERTIES (property_name=property_value, ...)]; --指定额外属性 

示例:

  1. CREATE DATABASE IF NOT EXISTS hive_test 
  2.   COMMENT 'hive database for test' 
  3.   WITH DBPROPERTIES ('create'='heibaiying'); 

创建一个数据库,数据库在HDFS 上的默认存储路径是/user/hive/warehouse/\*.db。

创建一个数据库,可以指定数据库在 HDFS 上存放的位置

  1. hive > CREATE DATABASE hive_test location '/db_hive.db'

查看数据库信息

语法:

  1. DESC DATABASE [EXTENDED] db_name; --EXTENDED 表示是否显示额外属性 

示例:

  1. DESC DATABASE  EXTENDED hive_test; 

删除数据库

语法:

  1. DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE]; 

默认行为是 RESTRICT,如果数据库中存在表则删除失败。要想删除库及其中的表,可以使用 CASCADE 级联删除。

示例:

  1. DROP DATABASE IF EXISTS hive_test CASCADE

案例实操

本地文件导入Hive

  1. [hadoop@node02 ~]$ vim student.txt  
  2. student.id student.name 
  3. 1  Runsen 
  4. 2  Zhangsan 
  5. 3  Lisi 
  6.  
  7. hive> CREATE DATABASE db_hive; 
  8. hive> use db_hive; 
  9. hive> create table student(id intname string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
  10.  
  11. hive> load data local inpath 'student.txt' into table student; 
  12.  
  13. hive> select * from student; 
  14. OK 
  15. student.id student.name 
  16. 1 Runsen 
  17. 2 Zhangsan 
  18. 3 Lisi 

 

除了可以将本地文件导入到HIve中,我们先把文件上传到HDFS,然后使用HDFS将数据导入到Hive中。

 

责任编辑:姜华 来源: Python之王
相关推荐

2021-03-02 21:52:48

Hive数据类型

2024-04-11 13:02:10

Rust数据类型

2021-03-24 09:37:41

数据类型数据分析数据的分类

2016-08-18 14:13:55

JavaScript基本数据引用数据

2009-09-07 10:48:53

C#数据类型

2009-09-04 10:16:30

C#数据类型

2010-07-22 17:57:40

2011-05-26 13:54:04

Json

2010-10-15 13:28:34

MySql数据类型

2023-11-14 10:05:52

Java开发工具

2009-10-16 12:52:28

VB.NET简单数据类

2023-03-27 10:04:27

数据类型浮点型布尔型

2014-01-05 17:08:09

PostgreSQL数据类型

2019-08-12 11:40:48

数据库SQLite3数据类型

2020-10-26 13:46:07

Java基础入门篇

2017-03-27 14:58:03

MapReduce数据类型数据格式

2024-11-04 06:20:00

Redis单线程

2021-07-30 07:02:34

Slice数组切片

2022-07-13 16:38:32

Python可变数据类型不可变数据类型

2010-09-06 17:35:43

SQL函数
点赞
收藏

51CTO技术栈公众号