在雅典娜中查询视图时出现资源限制问题

问题描述

我们在雅典娜中有一个视图,该视图在processing_date上已分区(数据类型:字符串-格式20201231) 我们正在寻找2020年的数据。

为了探索,我们需要所有列。

查询:

select * from online_events_dw_view
where from_iso8601_date(processing_date) > from_iso8601_date('20191231')

错误:

Query exhausted resources at this scale factor

有没有更好的方法来优化查询

解决方法

您正在对分区列应用函数,这很可能导致雅典娜扫描所有数据,因此您遇到了问题。

为什么不简单:processing_date like '2020%'

如果您只对列感兴趣,也许还可以尝试使用limit 1000来限制数据量。

,

对具有很多列的结果集进行排序时,通常会导致错误“以此比例因子查询耗尽的资源”。

由于您没有发布视图SQL,因此无法确定是否是您的问题,但是几乎总是存在宽行和排序,因此我假设您的计算机中有ORDER BY视图。尝试将其删除,然后查看查询是否正确执行。

有没有更好的方法来优化查询

您需要发布更多信息,以便我们为您提供帮助。没有视图的SQL,就什么都说不了。还要为所有涉及的表发布SQL,并提供有关分区,数据量,文件格式等的一些上下文。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...