hive使用中踩的一些坑

在使用Hive过程中遇到字段错位的问题,原因是默认分隔符为'/u0001'与数据冲突。解决方案包括修改表的默认分隔符或采用ORC存储格式,后者无需分隔符且能有效解决此问题。此外,文章还介绍了Hive的不同存储格式,如TextFile、SequenceFile、RCFile和ORC的特点和适用场景。
摘要由CSDN通过智能技术生成

默认分隔符问题

问题描述:

将hive中表A的内容查询出来存放到另外表B时,发现字段错位,有些字段的内容分成了几部分存在后面的字段中去

原因

原因是hive默认的分隔符为“/u0001”,而表A中有一个字段的内容中间有“/u0001”,因此导致了问题的出现

解决方法

修改了表B的默认分隔符:

CREATE TABLE b row format delimited fields terminated by '\t' as 
SELECT * FROM a limit 100;

彻底解决:
或者建表时将表存储格式改成ORC,ORC格式不需要分隔符,彻底解决问题

CREATE 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值