Hive内部表、外部表

Hive内部表、外部表

1. 内部表(Managed Table)

  • 内部表是由Hive完全管理的表,包括数据和元数据。
  • 当你删除内部表时,Hive会同时删除表的数据和元数据。
  • 内部表的数据存储在Hive指定的默认位置(通常是HDFS上的/user/hive/warehouse目录),不需要用户自己指定数据存储位置。
  • 创建内部表时,可以直接使用CREATE TABLE语句,并且不需要指定EXTERNAL关键字

2. 外部表(External Table)

  • 外部表也是由Hive管理的表,但是数据由用户自己管理。
  • 删除外部表时,只会删除表的元数据,不会删除数据本身。
  • 外部表的数据存储在用户指定的位置,可以是HDFS上的任何位置,也可以是本地文件系统或其他存储系统。
  • 创建外部表时,需要使用CREATE EXTERNAL TABLE语句,并且在表定义中使用LOCATION关键字来指定数据存储位置。

3.如何选择?

  • 当需要通过Hive完全管理控制表的整个生命周期时,请使用内部表

  • 当数据来之不易,防止误删,请使用外部表,因为即使删除表,文件也会被保留

  • 内部表适合管理Hive自己生成的数据,而外部表适合管理外部数据源,如已存在的数据文件或其他数据库中的数据。

相关推荐
K***65899 小时前
从0到1部署Tomcat和添加servlet(IDEA2024最新版详细教程)
hive·servlet·tomcat
李兆龙的博客10 小时前
从一到无穷大 #61 Hive史诗
数据仓库·hive·hadoop
q***06471 天前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
心止水j1 天前
hive分区
数据仓库·hive·hadoop
心止水j1 天前
Hive 桶表的创建、数据导入、查询与导出
数据仓库·hive·hadoop
8***a8152 天前
从0到1部署Tomcat和添加servlet(IDEA2024最新版详细教程)
hive·servlet·tomcat
5***79003 天前
JavaScript生成器函数
hive·tidb·consul
顧棟4 天前
HDFS元数据与auditlog结合Hive元数据统计分析
hive·hadoop·hdfs
yumgpkpm4 天前
腾讯云TBDS与CDH迁移常见问题有哪些?建议由CDH迁移到CMP 7.13 平台(类Cloudera CDP,如华为鲲鹏 ARM 版)
hive·hadoop·zookeeper·flink·spark·kafka·hbase
hexionly4 天前
数据仓库·架构,建模(二)
数据仓库