Hive学习笔记 --- Hive外部表和内部表的关系

本文介绍了Hive中的内部表和外部表的区别。默认创建的是内部表,删除内部表时会连同数据一起删除,而外部表仅删除元数据,数据保留在HDFS中。外部表适合管理已存在的数据,内部表则由Hive自行管理。此外,对外部表的修改需要使用特定命令同步元数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 1.默认情况下是内部表(MANAGED_TABLE);

  • 2.外部表(External Table)创建的时候需要加上External关键字,并指定位置存储位置;

  • 3.删除内部表会直接删除元数据(METADATA)以及存储数据;删除外部表仅仅会删除元数据,HDFS上的文件并不会删除;

  • 4.内部表由数据由Hive自由管理,外部表数据由HDFS管理;

  • 5.对内部表的修改直接同步给元数据,而对外部表的表结构和分区进行修改,则需要修复(MSCK REPAIR TABLE Table_NAME);

 

如下是Hive-WIKI中的关于外部表的描述:

A table created without the EXTERNAL clause is called a managed table because Hive manages its data.

Managed and External Tables

By default Hive creates managed tables, where files, metadata and statistics are managed by internal Hive processes. A managed table is stored under the hive.metastore.warehouse.dir path property, by default in a folder path similar to /apps/hive/warehouse/da
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨鑫newlfe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值