hive 删除外部表
时间: 2023-11-30 22:41:37 浏览: 37
当删除外部表时,Hive默认不会删除HDFS上的数据,只会删除元数据。如果需要同时删除HDFS上的数据,可以通过设置表属性external.table.purge=true来实现。具体操作步骤如下:
1. 进入Hive命令行界面,使用DROP TABLE命令删除外部表,并设置external.table.purge=true属性:
```
DROP TABLE <table_name> [PURGE];
ALTER TABLE <table_name> SET TBLPROPERTIES ('external.table.purge'='true');
```
2. 如果不想在删除表时手动设置external.table.purge=true属性,也可以在创建表时就设置该属性:
```
CREATE EXTERNAL TABLE <table_name> (
<column1> <data_type1>,
<column2> <data_type2>,
...
)
LOCATION '<hdfs_path>'
TBLPROPERTIES ('external.table.purge'='true');
```
相关问题
hive删除外部表数据
回答: 在Hive中删除外部表的数据有几种方式。一种方式是在创建表时设置table property external.table.purge=true,这样在删除表时会同时删除数据。\[1\]另一种方式是使用insert overwrite table语句,后面的select语句中使用条件1=0,这样会清除表中的数据。\[2\]需要注意的是,这种方式并没有清空外部表之前所指定路径下的文件。如果想要完全清空外部表的数据,可以先将外部表变为内部表,然后执行truncate命令,最后再将表改回外部表。具体操作是使用命令set TBLPROPERTIES('EXTERNAL'='false')将外部表变为内部表,然后执行truncate命令清空数据,最后再将表改回外部表。\[3\]
#### 引用[.reference_title]
- *1* *3* [转载:hive清空外部表的三种方式](https://blog.csdn.net/elizabethxxy/article/details/108912884)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [Hive中删除表数据的几种方式](https://blog.csdn.net/qq_42456324/article/details/109412698)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
hive的外部表增删改
Hive是一个基于Hadoop的数据仓库工具,它提供了一种类似于SQL的查询语言,用于处理大规模数据集。在Hive中,外部表是一种特殊类型的表,它与Hive的数据存储位置不同,可以与外部数据源进行交互。下面是关于Hive外部表的增删改的介绍:
1. 增加外部表:
- 创建外部表:使用CREATE EXTERNAL TABLE语句创建外部表,并指定外部表的名称、列定义和数据存储位置。
- 加载数据:可以使用LOAD DATA语句将外部数据加载到外部表中。
2. 删除外部表:
- 删除外部表:使用DROP TABLE语句删除外部表,同时会删除外部表的元数据信息,但不会删除实际的数据存储位置中的数据。
3. 修改外部表:
- 修改表结构:可以使用ALTER TABLE语句修改外部表的列定义、分区等属性。
- 修改数据存储位置:可以使用ALTER TABLE语句修改外部表的数据存储位置。