hive的内部表(MANAGED_TABLE)和外部表(EXTERNAL_TABLE)的区别

1.hive的表类型分为外部表和内部表

内部表和外部表的主要区别在于数据的存储方式。

外部表:外部表的存储在hdfs中,是我们指定的文件目录,当我们删除数据或者删除分区的时候不会将元数据删除,数据还会在hdfs目录中,我们还可以进行数据挂载。

内部表:内部表的存储是在hdfs的默认目录下,当我们删除数据或者删除分区的时候会将元数据删除,数据文件也会被删除。

2.查看一个表是内部表还是外部表

复制代码
DESCRIBE FORMATTED table_name

运行指令找到table_type 如果为MANAGED_TABLE,那就是内部表,

如果是EXTERNAL_TABLE,那就是外部表

3.创建内部表和外部表,外部表需要指定LOCATION

sql 复制代码
CREATE EXTERNAL TABLE external_table_name (
  column1 data_type,
  column2 data_type,
  ...
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LOCATION '/path/to/table';


CREATE TABLE internal_table_name (
  column1 data_type,
  column2 data_type,
  ...
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';
相关推荐
qiuyepiaoling1 小时前
数仓设计基础
数据仓库
兔子宇航员03012 小时前
HIVE SQL 中 NULL 值在 JOIN 和 GROUP BY 中的致命陷阱与解决方案
hive·hadoop·sql
段一凡-华北理工大学5 小时前
工业领域的Hadoop架构学习~系列文章02:HDFS架构深度剖析
大数据·人工智能·hadoop·学习·架构·高炉炼铁
Irene19917 小时前
Oracle(字符集分为服务端和客户端) 和 Hive(依赖 MySQL(或 PostgreSQL)存储元数据)字符集编码格式查询,中文乱码处理
hive·sql·oracle
段一凡-华北理工大学7 小时前
工业领域的Hadoop架构学习~系列文章03:MapReduce编程模型深度解读
大数据·人工智能·hadoop·学习·架构·高炉炼铁·高炉智能化
兔子宇航员03017 小时前
HiveSQL 中 NULL 与空字符串的区别与注意事项
数据库·数据仓库·sql
无关86888 小时前
StarRocks 存算分离 + Spark + Hive Metastore + MinIO 数据湖搭建全流程
大数据·hive·spark
小欣加油1 天前
Hadoop开发环境搭建
大数据·数据库·hadoop
段一凡-华北理工大学1 天前
工业领域的Hadoop架构学习~系列文章01:Hadoop与工业4.0深度融合
大数据·hadoop·学习·架构·知识图谱·高炉炼铁·工业智能体
宽海智能仓储物流1 天前
从状态检查到数据备份:仓储PLC控制器保养周期与实操清单
大数据·数据仓库·自动化