diff --git a/geonames/README.md b/geonames/README.md index d0ad3481..d4d5d33d 100644 --- a/geonames/README.md +++ b/geonames/README.md @@ -48,6 +48,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/geonames/test_procedures/default.json b/geonames/test_procedures/default.json index 67400d9b..c41b4694 100644 --- a/geonames/test_procedures/default.json +++ b/geonames/test_procedures/default.json @@ -60,153 +60,353 @@ { "operation": "index-stats", "warmup-iterations": 500, - "iterations": 1000, - "target-throughput": 90 + "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 90 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "node-stats", "warmup-iterations": 100, - "iterations": 1000, - "target-throughput": 90 + "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 90 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "default", "warmup-iterations": 500, - "iterations": 1000, - "target-throughput": 50 + "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "term", "warmup-iterations": 500, - "iterations": 1000, - "target-throughput": 100 + "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 100 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "phrase", "warmup-iterations": 500, - "iterations": 1000, - "target-throughput": 110 + "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 110 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "country_agg_uncached", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 3 - }, + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 3.6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} + }, { "operation": "country_agg_cached", "warmup-iterations": 1000, - "iterations": 1000, - "target-throughput": 100 + "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 100 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "scroll", "warmup-iterations": 200, "iterations": 100, - "#COMMENT": "Throughput is considered per request. So we issue one scroll request per second which will retrieve 25 pages", - "target-throughput": 0.8 + "#COMMENT": "Throughput is considered per request. So we issue one scroll request per second which will retrieve 25 pages" + {%- if not target_throughput %} + ,"target-throughput": 0.8 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "expression", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "painless_static", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "painless_dynamic", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "decay_geo_gauss_function_score", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "decay_geo_gauss_script_score", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "field_value_function_score", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "field_value_script_score", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "large_terms", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "large_filtered_terms", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "large_prohibited_terms", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "desc_sort_population", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "asc_sort_population", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "asc_sort_with_after_population", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "desc_sort_geonameid", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 6 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "desc_sort_with_after_geonameid", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 6 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "asc_sort_geonameid", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 6 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "asc_sort_with_after_geonameid", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 6 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, @@ -425,26 +625,58 @@ { "operation": "significant_text_selective", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 - }, + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} + }, { "operation": "significant_text_sampled_selective", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 20 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "significant_text_unselective", "warmup-iterations": 50, - "iterations": 20, - "target-throughput": 0.04 + "iterations": 20 + {%- if not target_throughput %} + ,"target-throughput": 0.04 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "significant_text_sampled_unselective", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 6 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] } diff --git a/geopoint/README.md b/geopoint/README.md index 8d08a6c2..7428a5a3 100644 --- a/geopoint/README.md +++ b/geopoint/README.md @@ -31,6 +31,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/geopoint/test_procedures/default.json b/geopoint/test_procedures/default.json index 273dec1c..37dff374 100644 --- a/geopoint/test_procedures/default.json +++ b/geopoint/test_procedures/default.json @@ -62,26 +62,58 @@ { "operation": "polygon", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "bbox", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "distance", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "distanceRange", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, diff --git a/geopointshape/README.md b/geopointshape/README.md index 7eda956b..54073853 100644 --- a/geopointshape/README.md +++ b/geopointshape/README.md @@ -26,6 +26,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/geopointshape/test_procedures/default.json b/geopointshape/test_procedures/default.json index 239f872b..e5181397 100644 --- a/geopointshape/test_procedures/default.json +++ b/geopointshape/test_procedures/default.json @@ -60,14 +60,30 @@ { "operation": "polygon", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "bbox", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, diff --git a/geoshape/README.md b/geoshape/README.md index d5ec02b9..7879a40c 100644 --- a/geoshape/README.md +++ b/geoshape/README.md @@ -25,6 +25,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/geoshape/test_procedures/default.json b/geoshape/test_procedures/default.json index f547cdcf..06e4e5bd 100644 --- a/geoshape/test_procedures/default.json +++ b/geoshape/test_procedures/default.json @@ -127,14 +127,30 @@ { "operation": "polygon", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 0.3 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.3 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "bbox", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 0.25 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.25 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] } diff --git a/http_logs/README.md b/http_logs/README.md index 8ecef981..91344de6 100644 --- a/http_logs/README.md +++ b/http_logs/README.md @@ -46,6 +46,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `ingest_pipeline`: Only applicable for `--test-procedure=append-index-only-with-ingest-pipeline`, selects which ingest node pipeline to run. Valid options are `'baseline'` (default), `'grok'` and `'geoip'`. For example: `--test-procedure=append-index-only-with-ingest-pipeline --workload-params="ingest_pipeline:'baseline'" ` * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/http_logs/test_procedures/default.json b/http_logs/test_procedures/default.json index 277e1776..44d3f164 100644 --- a/http_logs/test_procedures/default.json +++ b/http_logs/test_procedures/default.json @@ -59,39 +59,87 @@ { "operation": "default", "warmup-iterations": 500, - "iterations": 100, - "target-throughput": 8 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 8 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "name": "term", "operation": "term", "warmup-iterations": 500, - "iterations": 100, - "target-throughput": 50 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "200s-in-range", "warmup-iterations": 500, - "iterations": 100, - "target-throughput": 33 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 33 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "400s-in-range", "warmup-iterations": 500, - "iterations": 100, - "target-throughput": 50 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "hourly_agg", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 0.2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "scroll", @@ -103,26 +151,58 @@ { "operation": "desc_sort_timestamp", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "asc_sort_timestamp", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "desc_sort_with_after_timestamp", "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "asc_sort_with_after_timestamp", "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "name": "force-merge-1-seg", @@ -153,29 +233,61 @@ "name": "desc-sort-timestamp-after-force-merge-1-seg", "operation": "desc_sort_timestamp", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "name": "asc-sort-timestamp-after-force-merge-1-seg", "operation": "asc_sort_timestamp", "warmup-iterations": 200, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "name": "desc-sort-with-after-timestamp-after-force-merge-1-seg", "operation": "desc_sort_with_after_timestamp", "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "name": "asc-sort-with-after-timestamp-after-force-merge-1-seg", "operation": "asc_sort_with_after_timestamp", "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, diff --git a/nested/README.md b/nested/README.md index 0458c9f2..e1361be5 100644 --- a/nested/README.md +++ b/nested/README.md @@ -59,6 +59,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/nested/test_procedures/default.json b/nested/test_procedures/default.json index a16d0b6a..0f148b26 100644 --- a/nested/test_procedures/default.json +++ b/nested/test_procedures/default.json @@ -60,52 +60,115 @@ }, { "operation": "randomized-nested-queries", - "clients": 2, - "target-throughput": 20, "warmup-iterations": 500, "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "randomized-term-queries", - "clients": 2, - "target-throughput": 25, "warmup-iterations": 500, "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 25 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "randomized-sorted-term-queries", - "clients": 2, "warmup-iterations": 500, - "target-throughput": 16, "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 16 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "match-all", - "clients": 2, - "target-throughput": 5, "warmup-iterations": 500, "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "nested-date-histo", - "clients": 2, - "target-throughput": 1, "warmup-iterations": 100, "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "randomized-nested-queries-with-inner-hits_default", - "clients": 2, - "target-throughput": 18, "warmup-iterations": 500, "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 18 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "randomized-nested-queries-with-inner-hits_default_big_size", - "clients": 2, - "target-throughput": 16, "warmup-iterations": 500, "iterations": 1000 + {%- if not target_throughput %} + ,"target-throughput": 16 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 2 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, diff --git a/noaa/README.md b/noaa/README.md index 969809ae..889050ff 100644 --- a/noaa/README.md +++ b/noaa/README.md @@ -53,6 +53,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/noaa/test_procedures/default.json b/noaa/test_procedures/default.json index af86822a..80af773b 100644 --- a/noaa/test_procedures/default.json +++ b/noaa/test_procedures/default.json @@ -61,50 +61,116 @@ { "operation": "range_field_big_range", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 6 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_small_range", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 10 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 10 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_conjunction_big_range_small_term_query", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 10 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 10 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_conjunction_small_range_small_term_query", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 10 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 10 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_conjunction_small_range_big_term_query", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 4 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 4 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_conjunction_big_range_big_term_query", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 1 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_disjunction_small_range_small_term_query", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 10 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 10 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range_field_disjunction_big_range_small_term_query", "warmup-iterations": 100, - "iterations": 500, - "target-throughput": 6 + "iterations": 500 + {%- if not target_throughput %} + ,"target-throughput": 6 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, @@ -218,136 +284,307 @@ }, { "operation": "max_temp", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 4 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 4 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_top_hits", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 4 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 4 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_top_metrics", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 4 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 4 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "max_temp_per_station_10", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_hits_10", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_metrics_10", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_min_and_max_temp_per_station_top_metrics_10", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_five_max_temp_per_station_top_metrics_10", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "max_temp_per_station_10_depth_first", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_hits_10_depth_first", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_metrics_10_depth_first", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_metrics_10_sort_by", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "max_temp_per_station_5000", - "clients": 1, "warmup-iterations": 10, - "iterations": 100, - "target-throughput": 1 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_hits_5000", - "clients": 1, "warmup-iterations": 10, - "iterations": 50, - "target-throughput": 1 + "iterations": 50 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_hits_5000_via_source", - "clients": 1, "warmup-iterations": 10, - "iterations": 50, - "target-throughput": 1 + "iterations": 50 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_max_temp_per_station_top_metrics_5000", - "clients": 1, "warmup-iterations": 10, - "iterations": 50, - "target-throughput": 1 + "iterations": 50 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_min_and_max_temp_per_station_top_metrics_5000", - "clients": 1, "warmup-iterations": 10, - "iterations": 50, - "target-throughput": 1 + "iterations": 50 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_five_max_temp_per_station_top_metrics_5000", - "clients": 1, "warmup-iterations": 10, - "iterations": 50, - "target-throughput": 1 + "iterations": 50 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "last_country_code_per_station_top_metrics_5000", - "clients": 1, "warmup-iterations": 10, - "iterations": 50, - "target-throughput": 1 + "iterations": 50 + {%- if not target_throughput %} + ,"target-throughput": 1 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if not search_clients %} + ,"clients": 1 + {%- elif search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, diff --git a/nyc_taxis/README.md b/nyc_taxis/README.md index b570b551..416dce5f 100644 --- a/nyc_taxis/README.md +++ b/nyc_taxis/README.md @@ -71,6 +71,8 @@ This workload allows to overwrite the following parameters using `--workload-par * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/nyc_taxis/test_procedures/default.json b/nyc_taxis/test_procedures/default.json index 0cc9d626..202cc63e 100644 --- a/nyc_taxis/test_procedures/default.json +++ b/nyc_taxis/test_procedures/default.json @@ -56,32 +56,72 @@ { "operation": "default", "warmup-iterations": 50, - "iterations": 100, - "target-throughput": 3 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 3 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "range", "warmup-iterations": 50, - "iterations": 100, - "target-throughput": 0.7 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.7 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "distance_amount_agg", "warmup-iterations": 50, - "iterations": 100, - "target-throughput": 2 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 2 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "autohisto_agg", "warmup-iterations": 50, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "date_histogram_agg", "warmup-iterations": 50, - "iterations": 100, - "target-throughput": 1.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 1.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%-if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] }, diff --git a/percolator/README.md b/percolator/README.md index 4f75b5a8..3e0305b0 100644 --- a/percolator/README.md +++ b/percolator/README.md @@ -29,6 +29,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `index_settings`: A list of index settings. Index settings defined elsewhere (e.g. `number_of_replicas`) need to be overridden explicitly. * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/percolator/test_procedures/default.json b/percolator/test_procedures/default.json index 253e1bfb..0cb8d9cb 100644 --- a/percolator/test_procedures/default.json +++ b/percolator/test_procedures/default.json @@ -61,38 +61,86 @@ { "operation": "percolator_with_content_president_bush", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 50 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "percolator_with_content_saddam_hussein", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 50 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "percolator_with_content_hurricane_katrina", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 50 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "percolator_with_content_google", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 27 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 27 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "percolator_no_score_with_content_google", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 100 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 100 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "percolator_with_highlighting", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 50 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 50 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "percolator_with_content_ignore_me", @@ -104,8 +152,16 @@ { "operation": "percolator_no_score_with_content_ignore_me", "warmup-iterations": 100, - "iterations": 100, - "target-throughput": 15 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 15 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] } diff --git a/pmc/README.md b/pmc/README.md index b905f745..5bc73df3 100644 --- a/pmc/README.md +++ b/pmc/README.md @@ -40,6 +40,8 @@ This workload allows to overwrite the following parameters with Benchmark 0.8.0+ * `default_search_timeout` (default: -1) * `cluster_health` (default: "green"): The minimum required cluster health. * `error_level` (default: "non-fatal"): Available for bulk operations only to specify ignore-response-error-level. +* `target_throughput` (default: default values for each operation): Number of requests per second, `none` for no limit. +* `search_clients`: Number of clients that issues search requests. ### License diff --git a/pmc/test_procedures/default.json b/pmc/test_procedures/default.json index b04bbc4e..63c4e409 100644 --- a/pmc/test_procedures/default.json +++ b/pmc/test_procedures/default.json @@ -70,38 +70,86 @@ { "operation": "default", "warmup-iterations": 500, - "iterations": 200, - "target-throughput": 20 + "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "term", "warmup-iterations": 500, - "iterations": 200, - "target-throughput": 20 + "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "phrase", "warmup-iterations": 500, - "iterations": 200, - "target-throughput": 20 + "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "articles_monthly_agg_uncached", "warmup-iterations": 500, - "iterations": 200, - "target-throughput": 20 + "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "articles_monthly_agg_cached", "warmup-iterations": 500, - "iterations": 200, - "target-throughput": 20 + "iterations": 200 + {%- if not target_throughput %} + ,"target-throughput": 20 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} }, { "operation": "scroll", "warmup-iterations": 50, - "iterations": 100, - "target-throughput": 0.5 + "iterations": 100 + {%- if not target_throughput %} + ,"target-throughput": 0.5 + {%- elif target_throughput is string and target_throughput.lower() == 'none' %} + {%- else %} + ,"target-throughput": {{ target_throughput | tojson }} + {%- endif %} + {%- if search_clients is defined and search_clients %} + ,"clients": {{ search_clients | tojson}} + {%- endif %} } ] },