From 4fe58b64dbb423e69f1a75d74bd70100efde82ef Mon Sep 17 00:00:00 2001 From: fcosta_oliveira Date: Wed, 18 Jun 2025 14:41:59 +0100 Subject: [PATCH 1/2] Extended SCAN benchmarks to include cursor and large count. --- pyproject.toml | 2 +- ...eys-generic-scan-count-500-pipeline-10.yml | 34 +++++++++++++++++++ ...eric-scan-cursor-count-500-pipeline-10.yml | 34 +++++++++++++++++++ ...1Mkeys-generic-scan-cursor-pipeline-10.yml | 34 +++++++++++++++++++ 4 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml create mode 100644 redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml create mode 100644 redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml diff --git a/pyproject.toml b/pyproject.toml index 9743264a..6028195c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "redis-benchmarks-specification" -version = "0.1.269" +version = "0.1.270" description = "The Redis benchmarks specification describes the cross-language/tools requirements and expectations to foster performance and observability standards around redis related technologies. Members from both industry and academia, including organizations and individuals are encouraged to contribute." authors = ["filipecosta90 ","Redis Performance Group "] readme = "Readme.md" diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml new file mode 100644 index 00000000..7455edf7 --- /dev/null +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml @@ -0,0 +1,34 @@ +version: 0.4 +name: memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10 +description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with COUNT. +dbconfig: + configuration-parameters: + save: '""' + check: + keyspacelen: 1000000 + preload_tool: + run_image: redislabs/memtier_benchmark:edge + tool: memtier_benchmark + arguments: '"--pipeline" "100" "--data-size" "100" "--command" "HSET __key__ field __data__" "--command-key-pattern" "P" "-c" "50" "-t" "2" "--hide-histogram" "--key-minimum" "1"' + resources: + requests: + memory: 1g +tested-commands: +- scan +tested-groups: +- generic +redis-topologies: +- oss-standalone +build-variants: +- gcc:8.5.0-amd64-debian-buster-default +- dockerhub +clientconfig: + run_image: redislabs/memtier_benchmark:edge + tool: memtier_benchmark + arguments: --command "SCAN 0 COUNT 500" --pipeline 10 --command-key-pattern="R" -c 50 -t 2 --hide-histogram --test-time 180 + resources: + requests: + cpus: '2' + memory: 2g + +priority: 44 diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml new file mode 100644 index 00000000..e32f3590 --- /dev/null +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml @@ -0,0 +1,34 @@ +version: 0.4 +name: memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10 +description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with COUNT. +dbconfig: + configuration-parameters: + save: '""' + check: + keyspacelen: 1000000 + preload_tool: + run_image: redislabs/memtier_benchmark:edge + tool: memtier_benchmark + arguments: '"--pipeline" "100" "--data-size" "100" "--command" "HSET __key__ field __data__" "--command-key-pattern" "P" "-c" "50" "-t" "2" "--hide-histogram" "--key-minimum" "1"' + resources: + requests: + memory: 1g +tested-commands: +- scan +tested-groups: +- generic +redis-topologies: +- oss-standalone +build-variants: +- gcc:8.5.0-amd64-debian-buster-default +- dockerhub +clientconfig: + run_image: redislabs/memtier_benchmark:edge + tool: memtier_benchmark + arguments: --command "SCAN __key__ COUNT 500" --key-prefix "" --distinct-client-seed --key-maximum 1000000 --pipeline 10 --command-key-pattern="R" -c 50 -t 2 --hide-histogram --test-time 180 + resources: + requests: + cpus: '2' + memory: 2g + +priority: 44 diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml new file mode 100644 index 00000000..fe5bfcc9 --- /dev/null +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml @@ -0,0 +1,34 @@ +version: 0.4 +name: memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10 +description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance. +dbconfig: + configuration-parameters: + save: '""' + check: + keyspacelen: 1000000 + preload_tool: + run_image: redislabs/memtier_benchmark:edge + tool: memtier_benchmark + arguments: '"--pipeline" "100" "--data-size" "100" "--command" "HSET __key__ field __data__" "--command-key-pattern" "P" "-c" "50" "-t" "2" "--hide-histogram" "--key-minimum" "1"' + resources: + requests: + memory: 1g +tested-commands: +- scan +tested-groups: +- generic +redis-topologies: +- oss-standalone +build-variants: +- gcc:8.5.0-amd64-debian-buster-default +- dockerhub +clientconfig: + run_image: redislabs/memtier_benchmark:edge + tool: memtier_benchmark + arguments: --command "SCAN __key__" --pipeline 10 --key-prefix "" --distinct-client-seed --key-maximum 1000000 --command-key-pattern="R" -c 50 -t 2 --hide-histogram --test-time 180 + resources: + requests: + cpus: '2' + memory: 2g + +priority: 44 From b502c7d47430e072a4a23d4cd75e97f8fe60277a Mon Sep 17 00:00:00 2001 From: fcosta_oliveira Date: Wed, 18 Jun 2025 14:46:04 +0100 Subject: [PATCH 2/2] Extended SCAN benchmarks to include cursor and large count. --- ...tier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml | 2 +- ...nchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml | 2 +- ...memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml index 7455edf7..3d1be7ca 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10.yml @@ -1,6 +1,6 @@ version: 0.4 name: memtier_benchmark-1Mkeys-generic-scan-count-500-pipeline-10 -description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with COUNT. +description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with large COUNT. dbconfig: configuration-parameters: save: '""' diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml index e32f3590..ce274f4c 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10.yml @@ -1,6 +1,6 @@ version: 0.4 name: memtier_benchmark-1Mkeys-generic-scan-cursor-count-500-pipeline-10 -description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with COUNT. +description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with CURSOR and large COUNT. dbconfig: configuration-parameters: save: '""' diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml index fe5bfcc9..2af0369e 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10.yml @@ -1,6 +1,6 @@ version: 0.4 name: memtier_benchmark-1Mkeys-generic-scan-cursor-pipeline-10 -description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance. +description: Runs memtier_benchmark, for a keyspace length of 1M keys focusing on SCAN performance with CURSOR. dbconfig: configuration-parameters: save: '""'