当收集到足够的行数时,如何让 Trino 提前停止?

问题描述 投票:0回答:1

我有一个 Hive 数据库,我正在通过 Trino 查询它的表。每个表都有许多分区。每当我进行如下查询时

SELECT * FROM my_table LIMIT 100;

在返回 100 个条目之前,它仍然首先遍历所有分区。每个分区都有数百个条目,因此计算应该在一个分区之后停止并只给出一个输出。但事实并非如此,当查看不同的 UI 元素时,它似乎在返回之前经历了千兆字节的数据。 如果 Trino 收集了足够的数据,我需要调整哪些配置参数来告诉 Trino 停止具有 LIMIT 子句的计算?文档中没有任何配置参数让我印象深刻。

sql hive bigdata trino
1个回答
0
投票

您的查询没有指定什么分区或如何限制数据..因此它必须查看所有数据,然后减少到 100 行。它不能只是随机选择返回任何内容。

如果您想将其减少到特定分区..只需添加一个限制条件即可。根据您的分区,可能是某个日期值或其他值。

另请注意..仅添加排序也无济于事,因为它仍然必须查看所有数据。

© www.soinside.com 2019 - 2024. All rights reserved.