从另一个Hive Orc表插入时,Hive外部Orc表丢失列名

时间:2019-05-02 21:20:37

标签: hadoop hive orc

Hive,Orc,Hadoop,_col

蜂房表:

CREATE EXTERNAL TABLE `my_table`(
`h_cd` varchar(5) ,
`h_dt` date ,
`h_cd` char(3))
ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION 'hdfs://somelocation/';

在我使用插入一些数据之后

insert into `my_table` select * from `another_table`;

我做了ORCDUMPFILE,我看到了这个STRUCT

hive --orcfiledump hdfs://somelocation/000000_0

INFO [main] orc.RecordReaderImpl:未提供阅读器架构-使用文件schema struct<_col0:varchar(5),_col1:date,

为什么它会丢失列名?

这仅在我们使用HIVE时发生。如果我使用DataFrame / DataSet API从Source读取并写入Target,它会保留名称。

我得到了一些包含100多个列的表,而失去名字就是杀手。

0 个答案:

没有答案