欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Hive内部表和外部表区别

程序员文章站 2022-05-01 11:09:13
...

建立内部表:

# 创建
create table art_inn(sentence string)
row format delimited fields terminated by '\n';
# 导入
load data local inpath '/home/root/mapreduce/The_Man_of_Property.txt'
into table art_inn;

Hive内部表和外部表区别

建立外部表:

注意:外部表是在创建的时候定义实体数据的位置的,而且位置必须为文件夹,不能为文件。

create external table art_ext(sentence string)
row format delimited fields terminated by '\n'
location '/article';

Hive内部表和外部表区别

1、导入数据时:

    在导入数据到外部表,数据并没有移动到自己的数据仓库目录下(这句话理解:数据没有在hive-site.xml指定的目录下,但是必须在hdfs上),也就是说外部表的数据并不是由它自己来管理的,是由外部来做更改。

2、删除数据时:

    删除内部表时,Hive会把内部表的元数据和数据全部删除掉;删除外部表时,Hive仅仅是删除外部表的元数据,数据是不会删除的。

外部表删除如下图:

Hive内部表和外部表区别

Hive内部表和外部表区别

相关标签: hive