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内外表的区分方法及内外部差异的主要内容,如果未能解决你的问题,请参考以下文章

2018-11-13#Hive外表创建和加载数据

国内外区块链关键技术现状及差异

最新理论 | 国内外区块链关键技术现状及差异

分布式环境下hive的外部表是如何存储的

HIVE和HADOOP的一些东西

Hive管理表,外部表及外部分区表的深入探讨