Hive内部表与内部表

原创
小哥 3年前 (2022-11-02) 阅读数 122 #大杂烩

一、在Hive在中创建表时,无external修改的是内部表(managed table),有external修改的是外部表(external table):
1,内部表的数据为Hive自我管理,外部表格数据HDFS管理;
2,内部表数据存储的位置是hive在hdfs中有一个默认存储路径,即。default数据库(默认:/user/hive/warehouse)。所以在这条路上        下表是内部表格。
外部表格数据存储的位置由其自身指定,并且可以指定。/user/hive/warehouse其他路径。
3,删除内部表直接删除元数据(metadata)和存储数据时,对内部表的修改将直接与元数据同步。
移除外部表只会删除元数据,HDFS上的文件不会被删除,但需要修复外部表的表结构和分区(MSCK REPAIR TABLE table_name)

说明:hive有两种类型的数据,一种用于普通数据,另一种用于元数据。
元数据存储表的基本信息,添加、删除和检查记录,类似Hadoop架构中的namespace。普通数据是表格中的详细数据。
hive默认情况下存储元数据。derby,但在大多数情况下存储在MySQL在……里面。公共数据的存储方式如体系结构图所示。hdfs中。

2.内外表的转换:
内——>外
alter table tblName set tblproperties(EXTERNAL=TRUE);
外——>内
alter table tblName set tblproperties(EXTERNAL=FALSE);

https://www.iteblog.com/archives/899.html

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除