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

Hive 是否可以使用impala查询包含日期类型列的配置单元表?,hive,impala,Hive,Impala,每次我试图在IMPALA中从配置单元中创建的表中选择日期类型字段时,我都会得到AnalysisException:不支持的类型“DATE” 有什么解决办法吗 更新这是一个从配置单元和impala查询创建表架构的示例 模式: 创建表myschema.mytable(day\u dtdate, 事件字符串) 分区依据(day\u idint) 以输入格式存储 'org.apache.hadoop.mapred.TextInputFormat' 输出格式 'org.apache.hadoop.hive

每次我试图在IMPALA中从配置单元中创建的表中选择日期类型字段时,我都会得到AnalysisException:不支持的类型“DATE”

有什么解决办法吗

更新这是一个从配置单元和impala查询创建表架构的示例

模式:

创建表myschema.mytable(
day\u dt
date,
事件
字符串)

分区依据(
day\u id
int)

以输入格式存储 'org.apache.hadoop.mapred.TextInputFormat'

输出格式 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'

黑斑羚查询 选择b.day\u dt
来自myschema.mytable b

Impala没有
DATE
数据类型,而Hive有。当您从Impala访问时,您将获得
AnalysisException:Unsupported类型“DATE”
。快速修复方法是在配置单元中创建一个
字符串
列,该列包含
日期
值,并从Impala以任何方式访问该列。

如果您以字符串形式存储,则可以创建一个新的外部配置单元表,该表指向与现有表相同的HDFS位置,但是,对于模式,day_dt的数据类型为STRING,而不是DATE


这是一个真正的解决方法,它可能只适合某些用例,并且每当添加新分区时,您至少需要在外部配置单元表上执行“MSCK修复”。

考虑使用
时间戳
数据类型以提高互操作性我试图查询的配置单元表已经创建,无法更改。在impala中使用当前模式有什么解决方案吗?