Hive 不同存储格式表数据同步问题

在同步Hive中RCFILE格式的表到ORCFILE格式的表时遇到错误,由于存储格式差异导致数据同步失败。错误信息涉及到ORC文件的解析问题。解决方法是通过TEXTFILE格式作为中转,先将RCFILE数据导出并导入到TEXTFILE表,再从TEXTFILE表插入到ORCFILE表。注意中转过程中可能出现的特殊字符编码问题。博客作者希望通过分享自己的经验,与大数据领域的同行进行交流和学习。
摘要由CSDN通过智能技术生成

本人在同步两个集群的hive数据时遇到了一个坑爹的问题,A集群X表为RCFILE格式,B集群Y表为ORCFILE格式,现需要将X表的历史数据同步到Y表中。当初天真的以为直接导出导入就能解决问题了,完全忽略了存储格式不同的问题,结果同步完后,查询时直接一个错误砸我脸上。部分错误如下:

Caused by:java.lang.reflect.InvocationTargetException

      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

      at java.lang.reflect.Constructor.newInstance(Constructor.java:526)

      at org.apache.hadoop.hive.shims.HadoopShimsSecure$CombineFileRecordReader.initNextRecordReader(HadoopShimsSecure.java:251)

         ... 11 more

Caused by:java.io.IOException: Malformed ORC filehdfs://tongjihadoop151:8020/user/hive/warehouse/client_uv_daily_test/dt=2015-07-23/client_uv_2015-07-23.Invalid postscript.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值