【Hive Partition(分区)DDL操作】

Hive Partition(分区)DDL操作

add partition

ADD PARTITION会更改表元数据,但不会加载数据。如果分区位置中不存在数据,查询时将不会返回结果。

因此需要保证增加的分区位置路径下,数据已经存在,或者增加分区之后导入分区数据。

# 1. 增加分区
alter table table_name add partition (dt='20170101') location
# 一次添加一个分区

alter table table_name add partition (dt='2008-08-08', country='us') location '/path/to/us/part080808' partition (dt='2008-08-09', country='us') location 'path/to/us/part080809';
# 一次添加多个分区

rename partition

alter table table_name partition partition_soec rename to partition partition_spec;
alter table table_name partition (dt='2008-08-09') rename to partition (dt='20080809');

delete partition

删除表的分区。这将删除该分区的数据和元数据。

# 删除分区
alter table table_name drop [if exists] partition (dt='2008-08-08', country='us');
# 直接删除数据 不进垃圾桶
alter table table_name drop [if exists] partition (dt='2008-08-08', country='us') purge;

alter partition

# 修改分区
# 更改分区文件存储格式
alter table table_name partition (dt='2008-08-09') set fileformat file_format;
# 更改分区位置
alter table table_name partition (dt='2008-08-09') set location 'new location';
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Hive是基于Hadoop的数据仓库工具,可以通过类SQL语言进行数据查询、分析和处理。在Hive中,DDL(数据定义语言)用于创建、修改和删除表。 对于表的DDL操作包括创建表、修改表和删除表。创建表的语法如下: ``` CREATE TABLE table_name ( column1 data_type, column2 data_type, ... columnN data_type ) [PARTITIONED BY (partition_column data_type)] [ROW FORMAT row_format] [STORED AS file_format] ``` 其中,`table_name`为表名称,`column1`至`columnN`为表的列名和数据类型。如果需要使用分,可以在方括号内指定分列和数据类型。`ROW FORMAT`用于指定数据存储格式,如可选的有`DELIMITED`、`SERDE`等。`STORED AS`用于指定文件格式,如可选的有`TEXTFILE`、`PARQUET`等。 修改表的语法如下: ``` ALTER TABLE table_name [ADD | DROP] COLUMN column_name data_type [CHANGE COLUMN column_name new_column_name new_data_type] [RENAME TO new_table_name] [SET TBLPROPERTIES (key1=value1, key2=value2, ...)] ``` `ADD COLUMN`用于添加新列,`DROP COLUMN`用于删除指定列,`CHANGE COLUMN`用于修改列名称和数据类型。`RENAME TO`用于修改表名称。`SET TBLPROPERTIES`用于设置表属性。 删除表的语法如下: ``` DROP TABLE [IF EXISTS] table_name ``` `IF EXISTS`用于判断表是否存在,如果存在则删除。 通过上述的DDL操作,我们可以在Hive中创建、修改和删除表,从而实现对数据的有效管理和操作
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值