当我试图使用Hive命令将整数值插入 parquet 表中的列时,这些值没有得到插入,显示为null。但当使用impala命令时,它是有效的。但随着 Impala 的插入,分区的大小减小了。分区(show partitions)中的行数也显示为-1。这是什么原因?
CREATE TABLE `TEST.LOGS`(
`recordtype` string,
`recordstatus` string,
`recordnumber` string,
`starttime` string,
`endtime` string,
`acctsessionid` string,
`subscriberid` string,
`framedip` string,
`servicename` string,
`totalbytes` int,
`rxbytes` int,
`txbytes` int,
`time` int,
`plan` string,
`tcpudp` string,
`intport` string)
PARTITIONED BY (`ymd` string)
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
WITH SERDEPROPERTIES (
'field.delim'=',',
'serialization.format'=',')
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
'hdfs://dev-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
TBLPROPERTIES (
'transient_lastDdlTime'='1634390569')
插入语句
Hive
sudo -u hdfs hive -e 'insert into table TEST.LOGS partition (ymd="20220221") select * from TEMP.LOGS;'
Impala
impala-shell --ssl -i xxxxxxxxxxx:21000 -q 'insert into table TEST.LOGS partition (ymd="20220221") select * from TEMP.LOGS;'
1条答案
按热度按时间um6iljoc1#
当我试图使用Hive命令将整数值插入 parquet 表中的列时,这些值没有得到插入,显示为null
请分享您的准确插入语句和表格定义,以获得准确答案?如果我不得不猜测,这可能是因为hive和impala的隐式数据类型转换存在差异。
分区(show partitions)中的行数也显示为-1-
请运行
compute stats table_name
修复此问题。