0447-答应我,别在CDH5中使用ORC好吗

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
https://github.com/fayson/cdhproject
提示:代码块部分可以左右滑动查看噢

1

问题重现

当我们在使用ORC文件格式创建Hive表,并且对Hive表的schema进行更改后,然后进行如insert into…select或insert overwrite … select会报错,以下具体看看报错。

1.首先我们创建一张ORC格式的Hive表,从插入一行数据。

CREATE TABLE orc_test(
s1 date, 
s2 string, 
s3 string
)
STORED AS ORC
LOCATION '/fayson/orc_test';

insert into orc_test values('2015-12-18','25','11111');
select * from orc_test;

(可左右滑动)

2.我们先使用alter命令增加一列到该表,然后对该表进行insert操作。

ALTER TABLE  orc_test ADD COLUMNS (testing string);
INSERT overwrite table orc_test SELECT * FROM orc_test;
INSERT into table orc_test SELECT * FROM orc_test;

(可左右滑动)

3.发现无论是insert还是insert overwrite都会报错,如下。

-----
Diagnostic Messages for this Task:
Error: java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while processing row 
        at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.map(ExecMapper.java:179)
        at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值