![cover](https://img-blog.csdnimg.cn/0f7887b002c745f5929e400b3dc9cdc0.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAUmVsaWFu5ZOI5ZOI,size_20,color_FFFFFF,t_70,g_se,x_16)
hive表textfile格式与orc格式互转
ALTER TABLE dev.dev_yhzz_pop_bill SET FILEFORMAT INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' SERDE 'org.apache.hado
·
在使用hive表时候,我们可能会导入一些txt、csv等文本格式的数据,这时候如果表格式不是文本格式就会报错,继续导入就需要转换了
一、textfile转orc格式
1、改变格式
ALTER TABLE dev.dev_yhzz_pop_bill SET FILEFORMAT ORC;
或者分别设置 INPUTFORMAT、OUTPUTFORMAT、SERDE
ALTER TABLE dev.dev_yhzz_pop_bill SET FILEFORMAT INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe';
2、改变字段序列化分割与字段分隔符(若不是\t,需设置下)
alter table dev.dev_yhzz_pop_bill set serdeproperties('serialization.format'='\t', 'field.delim'='\t');
二、orc转textfile格式
1、改变格式
ALTER TABLE dev.dev_yhzz_pop_bill SET FILEFORMAT textfile;
或者分别设置 INPUTFORMAT、OUTPUTFORMAT、SERDE
ALTER TABLE dev.dev_yhzz_pop_bill SET FILEFORMAT INPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat' SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde';
三、查看表结构
DESC formatted dev.dev_yhzz_pop_bill
schema部分信息如下
更多推荐
所有评论(0)