2018-01-26-Hive

DDL   :

database

create   drop    alter  Use

Table   Create

Create Table  As  Select(CTAS)

Hive:三种类型表

1、临时表:Temporary

    跟Hive的生命周期一致,Hive Client关闭退出,表也一起删除了;临时表的优先级比其他表高,当临时表与其他表名一致时,我们操作的是临时表,当我们把临时表Drop掉,或者Alter,我们才可以操作其他表。

2、外部表:External

    只管理元数据,Drop表的时候,只删除元数据,HDFS上的数据,不会被删除,需要制定Location。

3、内部表:没有修饰词

    全部管理,元数据和HDFS上的数据,删除就都没了。

注:没事别删除数据!

ROW FORMAT

原始数据,用什么样的格式,加载到我们Hive表

加载到我们表里的数据,原始数据不会变

PARTITIONED BY

对我们数据进行分区

STORED  AS

数据存储的文件格式

LOCATION

存放在HDFS上目录的位置

Drop

Truncate

DML:

Load

LOCAL本地

local和inpath组合,决定从hdfs上读取数据,还是从客户端位置读取数据,

我们加载数据的时候,实际是把一个数据文件,移动到Hive warehouse目录下面,表名的这个目录

HDFS上,直接就挪过去了

Local是上传到临时目录,然后再移动到相应的位置

OVERWRITE

是否覆盖原有数据

如果不覆盖原有数据的话,把 原有数据,复制到hive数据目录下,就会重复了xxx_copy

PARTITION

分区,根据partition(gender='male',age='35')

INSERT

into Hive tables from queries

into directories from queries

into Hive tables from SQL

在本地linux系统上的文件要加上local这个关键词

如果是hdfs上的文件,直接写filepath;

两种方式启动:HOW to Start

$HIVE_HOME/bin/hiveserver2

$HIVE_HOME/bin/hive  --service hiveserver2

写一个JDBC的程序,连接Hive,操作Hive里面的表

你可能感兴趣的:(2018-01-26-Hive)