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自己生成的数据,而外部表适合管理外部数据源,如已存在的数据文件或其他数据库中的数据。

相关推荐
看海的四叔25 分钟前
【SQL】SQL同环比计算的多种实现方式
数据库·hive·sql·mysql·数据分析·同环比
xiaogai_gai11 小时前
金蝶云星空API接口的ETL转换与数据写入方案
数据仓库·etl
菜鸟小码12 小时前
Hive数据类型全解析:从基础到复杂类型实战指南
数据仓库·hive·hadoop
Gauss松鼠会13 小时前
【GaussDB】浅谈SQL与ETL
数据库·数据仓库·sql·etl·gaussdb·经验总结
隐于花海,等待花开13 小时前
1.CONCAT / CONCAT_WS 函数深度解析
大数据·hive
juniperhan13 小时前
Flink 系列第13篇:Flink 生产环境中的并行度与资源配置
java·大数据·数据仓库·分布式·flink
菜鸟小码13 小时前
深入浅出 Hive 数据类型:从入门到实战
数据仓库·hive·hadoop
YMatrix 官方技术社区1 天前
美国·硅谷|YMatrix 即将亮相 Postgres Conference 2026,前瞻 AI 时代的数据基座
数据库·数据仓库·postgresql·时序数据库·ymatrix
孟意昶1 天前
Doris专题31-SQL手册-基础元素
大数据·数据库·数据仓库·分布式·sql·知识图谱·doris
juniperhan1 天前
Flink 系列第12篇:Flink 维表关联详解
大数据·数据仓库·分布式·flink