Hive内外表的区分方法及内外部差异
Posted sx66
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive内外表的区分方法及内外部差异相关的知识,希望对你有一定的参考价值。
Hive内外部区分方法
- 查看hive元数据:进入mysql中hive元数据库,查看TBLS表,查看对应的表名和表类型;
- 在hive-cli界面:desc extended tablename,查看TableType,一般在展示结果的最后显示;
- 在hive-cli界面:desc formatted tablename,一个格式化的信息,查看TableType;
Hive内外表特点
- 内部表:
- hive创建表的时候默认是MANAGED_TABLE:内部表
- hive创建表的时候如果指定location,当进行load操作的时候,hdfs上的原始数据会迁移到location指定的目录下;如果创建表的时候没有指定location,数据会迁移到hive-site.xml中配置好的数据存储路径;
- hive内部表删除表的时候会将hdfs目录的数据和元数据信息全部删除;
- 外部表:
- 创建外部表的时候需要指定location的位置;
- hive删除表的时候只会讲元数据信息删除,并不会删除HDFS上的数据;
- 生成环境中,建议使用hive外部表;
以上是关于Hive内外表的区分方法及内外部差异的主要内容,如果未能解决你的问题,请参考以下文章