Presto on Search of normal select query[non partitioned hive table]给出列$path在数据库默认表<Table>中不存在
Posted
技术标签:
【中文标题】Presto on Search of normal select query[non partitioned hive table]给出列$path在数据库默认表<Table>中不存在【英文标题】:Presto on Search of normal select query[non partitioned hive table] gives Column $path doesn't exist in table <Table> in database default 【发布时间】:2021-09-29 20:35:41 【问题描述】:我们有一个非分区表 - 配置单元中的 xx_table 查询它会给出正确的响应。在连接到 hive 的 Presto 上,给出以下错误响应。 [Presto 版本:presto_0.180]
presto:default> select * from xx_table;
查询 20210722_123707_00059_42bza 失败:列 $path 不存在 在数据库默认的表 xx_table 中
presto:default> show create table xx_table;
----------------------------------------------------
CREATE TABLE hive.default.xx_table (
a bigint,
b timestamp,
c timestamp,
d bigint,
e bigint,
f bigint,
g varchar,
h timestamp,
i bigint,
j timestamp,
k bigint
)
WITH (
format = 'ORC'
)
【问题讨论】:
【参考方案1】:作为一种解决方法,尝试在 Hive 中计算统计信息:
ANALYZE TABLE .... COMPUTE STATISTICS FOR COLUMNS
好像是这个bug:#8380 您也可以尝试升级到 0.183 或更高版本
【讨论】:
以上是关于Presto on Search of normal select query[non partitioned hive table]给出列$path在数据库默认表<Table>中不存在的主要内容,如果未能解决你的问题,请参考以下文章
Presto系列 | 一Presto SQL On Everything
Presto系列 | 一Presto SQL On Everything
Presto on Spark:通过 Spark 来扩展 Presto