0

我在 starburst-presto 中运行 SQL 查询。它使用相关连接器连接到 elasticsearch。

SQL 有一个“order by”子句。此子句不会下推到 elasticsearch。基本上,我想根据特定字段对elasticsearch中的数据进行排序并返回结果。使用 presto 的“order by”查询需要花费大量时间。是否有可能以某种方式获得最佳性能?

SQL:select e.employee_id from elasticsearch.es."employee:id:""2390571"" && (doj_timestamp:(>=15965454 && <=15972366)) sort=employee_id:desc" e offset 0 limit 5;

上面的查询返回随机结果。

有人可以在这里帮忙吗?

4

1 回答 1

3

您的查询同时具有 ORDER BY 和 LIMIT,因此在 Presto 中它被称为 Top N 查询。Presto 目前不提供 Top N 下推,但此功能正在开发中。

请为 Elasticsearch 连接器 TopN 下推提交问题。无论如何,我们都会实施它,但直接的用户反馈有助于了解问题的优先级。

您可以在Presto community slack#pushdown的频道上了解更多信息。

于 2020-08-12T16:12:23.057 回答