From 1403e2b1fcb4e9a887711b7c392586fcdb655384 Mon Sep 17 00:00:00 2001 From: Nik Everett Date: Tue, 2 Jun 2020 10:33:57 -0400 Subject: [PATCH] Add track for sub-bucket-aggs (#114) Adds a rally track specifically for testing the performance of the bucket aggs when they are "sub" aggs. Relates to https://github.com/elastic/elasticsearch/pull/55873 --- noaa/challenges/default.json | 117 +++++++++++++ noaa/operations/default.json | 310 ++++++++++++++++++++++++++++++++++- 2 files changed, 426 insertions(+), 1 deletion(-) diff --git a/noaa/challenges/default.json b/noaa/challenges/default.json index 0e539ba0..014fdb6b 100644 --- a/noaa/challenges/default.json +++ b/noaa/challenges/default.json @@ -337,4 +337,121 @@ "target-throughput": 1 } ] + }, + { + "name": "sub-bucket-aggs", + "description": "Checks the performance of bucket aggregations under bucket aggregations", + "default": false, + "schedule": [ + { + "operation": "delete-index" + }, + { + "operation": { + "operation-type": "create-index", + "settings": {{index_settings | default({}) | tojson}} + } + }, + { + "name": "check-cluster-health", + "operation": { + "operation-type": "cluster-health", + "index": "weather-data-2016", + "request-params": { + "wait_for_status": "{{cluster_health | default('green')}}", + "wait_for_no_relocating_shards": "true" + } + } + }, + { + "operation": "index", + "#COMMENT": "This is an incredibly short warmup time period but it is necessary to get also measurement samples. As this benchmark is rather about search than indexing this is ok.", + "warmup-time-period": 10, + "clients": {{bulk_indexing_clients | default(8)}} + }, + { + "name": "refresh-after-index", + "operation": "refresh", + "clients": 1 + }, + { + "operation": "force-merge", + "clients": 1 + }, + { + "name": "refresh-after-force-merge", + "operation": "refresh", + "clients": 1 + }, + { + "operation": "keyword-terms-numeric-terms", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 5 + }, + { + "operation": "numeric-terms-numeric-terms", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 3 + }, + { + "operation": "date-histo-numeric-terms", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 3 + }, + { + "operation": "date-histo-histo", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 3 + }, + { + "operation": "range-numeric-significant-terms", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 16 + }, + { + "operation": "range-date-histo", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 3 + }, + { + "operation": "range-date-histo-with-metrics", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 6 + }, + { + "operation": "range-auto-date-histo", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 3 + }, + { + "operation": "range-auto-date-histo-with-metrics", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 6 + }, + { + "operation": "range-auto-date-histo-with-time-zone", + "clients": 1, + "warmup-iterations": 10, + "iterations": 50, + "target-interval": 7 + } + ] } diff --git a/noaa/operations/default.json b/noaa/operations/default.json index 4615d4d3..7290b848 100644 --- a/noaa/operations/default.json +++ b/noaa/operations/default.json @@ -713,5 +713,313 @@ } } } + }, + { + "name": "keyword-terms-numeric-terms", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "station": { + "terms": { + "field": "station.id", + "size": 500 + }, + "aggs": { + "date": { + "terms": { + "field": "date", + "size": 1 + }, + "aggs": { + "max": { + "max": { "field": "tmax" } + } + } + } + } + } + } + } + }, + { + "name": "numeric-terms-numeric-terms", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "terms": { + "field": "TMAX", + "size": 100 + }, + "aggs": { + "tavg": { + "terms": { + "field": "TAVG" + } + } + } + } + } + } + }, + { + "name": "date-histo-numeric-terms", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "date": { + "date_histogram": { + "field": "date", + "calendar_interval": "1w" + }, + "aggs": { + "tavg": { + "terms": { + "field": "TAVG" + } + } + } + } + } + } + }, + { + "name": "date-histo-histo", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "date": { + "date_histogram": { + "field": "date", + "calendar_interval": "1w" + }, + "aggs": { + "tavg": { + "histogram": { + "field": "TAVG", + "interval": 10 + } + } + } + } + } + } + }, + { + "name": "range-numeric-significant-terms", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "range": { + "field": "TMAX", + "ranges": [ + {"to": -10}, + {"from": -10, "to": 0}, + {"from": 0, "to": 10}, + {"from": 10, "to": 20}, + {"from": 20, "to": 30}, + {"from": 30} + ] + }, + "aggs": { + "date": { + "significant_terms": { + "field": "date" + } + } + } + } + } + } + }, + { + "name": "range-date-histo", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "range": { + "field": "TMAX", + "ranges": [ + {"to": -10}, + {"from": -10, "to": 0}, + {"from": 0, "to": 10}, + {"from": 10, "to": 20}, + {"from": 20, "to": 30}, + {"from": 30} + ] + }, + "aggs": { + "date": { + "date_histogram": { + "field": "date", + "calendar_interval": "1w" + } + } + } + } + } + } + }, + { + "name": "range-date-histo-with-metrics", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "range": { + "field": "TMAX", + "ranges": [ + {"to": -10}, + {"from": -10, "to": 0}, + {"from": 0, "to": 10}, + {"from": 10, "to": 20}, + {"from": 20, "to": 30}, + {"from": 30} + ] + }, + "aggs": { + "date": { + "date_histogram": { + "field": "date", + "calendar_interval": "1w" + }, + "aggs": { + "tmin": { + "min": { + "field": "TMIN" + } + }, + "tavg": { + "avg": { + "field": "TAVG" + } + }, + "tmax": { + "max": { + "field": "TMAX" + } + } + } + } + } + } + } + } + }, + { + "name": "range-auto-date-histo", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "range": { + "field": "TMAX", + "ranges": [ + {"to": -10}, + {"from": -10, "to": 0}, + {"from": 0, "to": 10}, + {"from": 10, "to": 20}, + {"from": 20, "to": 30}, + {"from": 30} + ] + }, + "aggs": { + "date": { + "auto_date_histogram": { + "field": "date", + "buckets": 20 + } + } + } + } + } + } + }, + { + "name": "range-auto-date-histo-with-metrics", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "range": { + "field": "TMAX", + "ranges": [ + {"to": -10}, + {"from": -10, "to": 0}, + {"from": 0, "to": 10}, + {"from": 10, "to": 20}, + {"from": 20, "to": 30}, + {"from": 30} + ] + }, + "aggs": { + "date": { + "auto_date_histogram": { + "field": "date", + "buckets": 20 + }, + "aggs": { + "tmin": { + "min": { + "field": "TMIN" + } + }, + "tavg": { + "avg": { + "field": "TAVG" + } + }, + "tmax": { + "max": { + "field": "TMAX" + } + } + } + } + } + } + } + } + }, + { + "name": "range-auto-date-histo-with-time-zone", + "operation-type": "search", + "body": { + "size": 0, + "aggs": { + "tmax": { + "range": { + "field": "TMAX", + "ranges": [ + {"to": -10}, + {"from": -10, "to": 0}, + {"from": 0, "to": 10}, + {"from": 10, "to": 20}, + {"from": 20, "to": 30}, + {"from": 30} + ] + }, + "aggs": { + "date": { + "auto_date_histogram": { + "field": "date", + "buckets": 20, + "time_zone": "America/New_York" + } + } + } + } + } + } } - \ No newline at end of file