是否可以使用impala查询包含日期类型列的配置单元表?

z3yyvxxp  于 2021-06-26  发布在  Hive
关注(0)|答案(2)|浏览(499)

每次我试图在impala中从配置单元中创建的表中选择日期类型字段时,我都会得到analysisexception:不支持的类型“date”。
有什么解决办法吗?
update这是一个从配置单元和impala查询创建表模式的示例
架构:
创建表 myschema.mytable ( day_dt 日期, event (字符串)
分区者( day_id 内景)
存储为inputformat'org.apache.hadoop.mapred.textinputformat'
outputformat'org.apache.hadoop.hive.ql.io.hiveignorekeytextoutputformat'
impala查询从myschema.mytable b中选择b.day\u dt;

kfgdxczn

kfgdxczn1#

如果要以字符串形式存储,则可以创建一个新的外部配置单元表,该表指向与现有表相同的hdfs位置,但模式的数据类型为string而不是date。
这是一个真正的解决方法,它可能只适用于某些用例,并且您至少需要在添加新分区时对外部配置单元表执行“msck修复”。

ukdjmx9f

ukdjmx9f2#

Impala 没有翅膀 DATE 数据类型,而hive有。你会得到 AnalysisException: Unsupported type 'DATE' 当你从 Impala 那里进入的时候。一个快速解决办法是创建一个 string 那一列 date 在Hive的价值和访问它的任何方式,你想从 Impala 。

相关问题