内部表
先在hive中创建一张表,然后向这个表中插入数据(insert,通过加载文件)。这样的表成为hive的内部表。
什么是内部表:先有hive表,在有数据。
特点:当内部表被删除时,对应的hdfs中的数据也会被删除。
外部表(实际开发中较为常用)
HDFS文件系统中已存的文件,里面存储了一些数据,之后再有hive去管理。
什么是外部表:先有数据,再有hive表。
特点是:删除外部表的时候,表所对应的数据文件依然存在。
小实验:
在hdfs上面创建一个目录,并上传一个文件。
进入hive,在hive中执行命令:
create external table t5 (id int,name string) row format delimited fields terminated by ’ ’ location ‘/hive/stu/’;
成功之后,t5表中就会把/hive/stu里面的文件内容当做数据插入。