hive 指定字段插入数据_一文搞定hive之insert into 和 insert overwrite与数据分区

本文介绍了Hive的数据分区概念,包括水平和垂直分区,并详细讲解了Hive插入数据的三种方式:静态插入、动静混合分区和动态分区。同时,文章提到了Hive动态分区的相关参数设置。此外,还对比了`INSERT INTO`和`INSERT OVERWRITE`两种数据插入操作的区别,前者追加数据,后者重写数据。
摘要由CSDN通过智能技术生成

版权声明:本文为博主原创文章,未经博主允许不得转载。

数据分区

数据库分区的主要目的是为了在特定的SQL操作中减少数据读写的总量以缩减响应时间,主要包括两种分区形式:水平分区与垂直分区。水平分区是对表进行行分区。而垂直分区是对列进行分区,一般是通过对表的垂直划分来减少目标表的宽度,常用的是水平分区。

hive建立分区语法:

create external table if not exists tablename(

a string,

b string)

partitioned by (year string,month string)

row format delimited fields terminated by ‘,’;

hive通常有三种方式对包含分区字段的表进行数据插入:

1)静态插入数据:要求插入数据时指定与建表时相同的分区字段,如:

insert overwrite tablename (year=’2017′, month=’03’) select a, b from tablename2;

2)动静混合分区插入:要求指定部分分区字段的值,如:

insert overwrite tablename (year=’2017′, month) select a, b from tablename2;

3)动态分区插入:只指定分区字段,不用指定值,如:

insert overwrite tablename (year, month) select a, b from tablename2;

hive动态分区设置相关参数:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值