hdfs orc格式_hive中orc格式表的数据导入

本文介绍了如何在Hive中导入数据到ORC格式表。首先需要创建临时的textfile格式表,然后通过`LOAD DATA`加载数据,再使用`INSERT INTO`语句将数据从临时表导入到ORC格式表。直接加载数据到ORC表会导致查询错误。详细步骤包括创建临时表和数据表,以及数据导入和迁移的过程。
摘要由CSDN通过智能技术生成

Hive系列文章

hive创建orc格式表不能像textfile格式一样直接load数据到表中,需要创建临时textfile表,然后通过insert into 或者insert overwrite到orc存储格式表中。

如果你直接load数据到orc格式表中,这个步骤可以成功,但是会发现select * from table limit 1;这个语句都会报错,也就是说直接load数据是不可行的。对于hive中orc格式表可以参见:大数据:Hive - ORC 文件存储格式

1)、创建表

需要创建临时表和数据表。

临时表

create table if not exists db.tmp

(

name string,

age int

)

partitioned by (dt string, hour string, msgtype string, action string)

row format delimited fields terminated by '\t';

数据表

create external table if not exists db.people

(

name string,

age int

)

partitioned by (dt string, hour string, msgtype string, action string)

row format delimited fields terminated by '\t'

stored as orc;

2)、 导入数据

需要先用load命令将数据导入textfile格式表,然后再通过insert into插入orc格式表。

(1) 导入数据到textfile

load data inpath 'hdfs://path' into table db.tmp partition(dt="2018-06-22",hour="00",msgtype="web", action="click");

(2)查询数据插入orc格式表

insert into db.people partition(dt="2018-06-22",hour="00",msgtype="web", action="click")

select name,age

from db.tmp where dt = "2018-06-22" and hour = "00"

and msgtype = "web" and action = "click";

关注公众号:Java大数据与数据仓库,学习大数据技术。

喜欢 (0)or分享 (0)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值