From 8705a2b855445583e8a0717df3492e6f7615bbd3 Mon Sep 17 00:00:00 2001 From: Craig Taverner Date: Tue, 5 Nov 2024 10:14:11 +0100 Subject: [PATCH] Two more benchmarks for partial sorting with ESQL (#703) * Two more benchmarks for partial sorting with ESQL These cannot be replicated in _search since that only supports what can be pushed down to lucene, and this feature explicitly only pushes down part of the sort, and then does the other part in the compute engine. * Remove incorrectly added temporary benchmarks. --- geopoint/challenges/default.json | 12 ++++++++++++ geopoint/operations/default.json | 10 ++++++++++ 2 files changed, 22 insertions(+) diff --git a/geopoint/challenges/default.json b/geopoint/challenges/default.json index a3941747..aabc0ca2 100644 --- a/geopoint/challenges/default.json +++ b/geopoint/challenges/default.json @@ -337,6 +337,12 @@ "iterations": 50, "tags": ["distance", "esql", "sort"] }, + { + "operation": "distanceSort-esql-partial", + "warmup-iterations": 50, + "iterations": 50, + "tags": ["distance", "esql", "sort"] + }, { "operation": "distanceFilterSort", "warmup-iterations": 200, @@ -349,6 +355,12 @@ "iterations": 100, "tags": ["distance", "esql", "sort"] }, + { + "operation": "distanceFilterSort-esql-partial", + "warmup-iterations": 200, + "iterations": 100, + "tags": ["distance", "esql", "sort"] + }, { "operation": "distanceRange", "warmup-iterations": 40, diff --git a/geopoint/operations/default.json b/geopoint/operations/default.json index 54bfbcf8..b7b79d3d 100644 --- a/geopoint/operations/default.json +++ b/geopoint/operations/default.json @@ -591,6 +591,11 @@ "operation-type": "esql", "query": "FROM osmgeopoints | EVAL distance = ST_Distance(location, TO_GEOPOINT(\"POINT(7.0 55.0)\")) | SORT distance ASC | LIMIT 10" }, + { + "name": "distanceSort-esql-partial", + "operation-type": "esql", + "query": "FROM osmgeopoints | EVAL distance = ST_Distance(location, TO_GEOPOINT(\"POINT(7.0 55.0)\")), loc = location::string | SORT distance ASC, loc ASC | LIMIT 10" + }, { "name": "distanceFilterSort", "operation-type": "search", @@ -620,6 +625,11 @@ "operation-type": "esql", "query": "FROM osmgeopoints | EVAL distance = ST_Distance(location, TO_GEOPOINT(\"POINT(7.0 55.0)\")) | WHERE distance <= 400000 | SORT distance ASC | LIMIT 10" }, + { + "name": "distanceFilterSort-esql-partial", + "operation-type": "esql", + "query": "FROM osmgeopoints | EVAL distance = ST_Distance(location, TO_GEOPOINT(\"POINT(7.0 55.0)\")), loc = location::string | WHERE distance <= 400000 | SORT distance ASC, loc ASC | LIMIT 10" + }, { "name": "distanceRange", "operation-type": "search",