聊聊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开始支持Hi 常用DDL操作 查看数据列表 show databases; 

 

使用数据库 USE database_name;  新建数据库

语法:

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

示例:

CREATE DATABASE&nb类型sp;IF NOT EXISTS hive_test   COMMENT 'hive database for test'   WITH DBPROPERTIES ('c和简reate'='heibaiying'); 

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

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

hive > CREATE DATABASE hive_test&单使nbsp;location '/db_hive.db';  查看数据库信息

语法:

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

示例:

DESC DATABASE 聊聊; EXTENDED hive_test;  删除数据库

语法:

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

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

示例:

DROP DATABASE IF EXISTS hive_test CASCADE;  案例实操

本地文件导入Hive

[hadoop@node02 ~]$ vimve student.txt  student.id student.name 1  Runsen 2  Zhangsan 3  Lisi  hive> CREA数据TE DATABASE db_hive; hive> use db_hive; hive> create table student(id int, name string) RO类型W FORMAT DELIMITED FIELDS TERMINATED BY ' ';  hive> load data local inpath 'student.txt' in和简to table student;  hive> select * from student; OK student.id student.name 1 Runsen 2&单使nbsp;Zhangsan 3 Lisi 

 

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