Skip to content

Commit c4fbc21

Browse files
Including further HFIELD expiration benchmarks (#338)
* Including further HFIELD expiration benchmarks * Update redis_benchmarks_specification/test-suites/memtier_benchmark-100Kkeys-hash-hgetex-5-fields-10B-values.yml Co-authored-by: Paulo Sousa <paulo.sousa@redis.com> * Update redis_benchmarks_specification/test-suites/memtier_benchmark-100Kkeys-hash-hexpire-5-fields-10B-values.yml Co-authored-by: Paulo Sousa <paulo.sousa@redis.com> * Fixed description of leaderboard top100/1000 (#316) * Fixed typo on 5/50 benchmark --------- Co-authored-by: Paulo Sousa <paulo.sousa@redis.com>
1 parent 3b13ea8 commit c4fbc21

17 files changed

+546
-4
lines changed
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-hash-hexpire-5-fields-10B-values
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys pre-loading
4+
HASHes in which the value has a data size of 10 Bytes. After pre-loading the data
5+
it issues HEXPIRE command.
6+
dbconfig:
7+
dataset_name: 1Mkeys-hash-5-fields-10B-size
8+
configuration-parameters:
9+
save: '""'
10+
check:
11+
keyspacelen: 100000
12+
preload_tool:
13+
run_image: redislabs/memtier_benchmark:edge
14+
tool: memtier_benchmark
15+
arguments: '"--data-size" "10" --command "HSET __key__ field:1 __data__ field:2
16+
__data__ field:3 __data__ field:4 __data__ field:5 __data__ " --command-key-pattern="P"
17+
--key-minimum=1 --key-maximum 100001 -n allkeys -c 1 -t 1 --hide-histogram --pipeline
18+
50'
19+
resources:
20+
requests:
21+
memory: 2g
22+
dataset_description: This dataset contains 100K hash keys, each with 5 fields
23+
and each field has a data size of 10 bytes.
24+
tested-groups:
25+
- hash
26+
tested-commands:
27+
- hexpire
28+
redis-topologies:
29+
- oss-standalone
30+
build-variants:
31+
- gcc:15.2.0-amd64-debian-bookworm-default
32+
- gcc:15.2.0-arm64-debian-bookworm-default
33+
- dockerhub
34+
clientconfig:
35+
run_image: redislabs/memtier_benchmark:edge
36+
tool: memtier_benchmark
37+
arguments: ' --command "HEXPIRE __key__ 3600 FIELDS 5 field:1 field:2 field:3 field:4 field:5" --command-key-pattern="R" --key-minimum=1
38+
--key-maximum 100000 --test-time 120 -c 50 -t 4 --hide-histogram'
39+
resources:
40+
requests:
41+
cpus: '4'
42+
memory: 2g
43+
priority: 96
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-hash-hexpireat-5-fields-10B-values
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys pre-loading
4+
HASHes in which the value has a data size of 10 Bytes. After pre-loading the data
5+
it issues HEXPIREAT command ( expire second is 2038, January 1 ).
6+
dbconfig:
7+
dataset_name: 1Mkeys-hash-5-fields-10B-size
8+
configuration-parameters:
9+
save: '""'
10+
check:
11+
keyspacelen: 100000
12+
preload_tool:
13+
run_image: redislabs/memtier_benchmark:edge
14+
tool: memtier_benchmark
15+
arguments: '"--data-size" "10" --command "HSET __key__ field:1 __data__ field:2
16+
__data__ field:3 __data__ field:4 __data__ field:5 __data__ " --command-key-pattern="P"
17+
--key-minimum=1 --key-maximum 100001 -n allkeys -c 1 -t 1 --hide-histogram --pipeline
18+
50'
19+
resources:
20+
requests:
21+
memory: 2g
22+
dataset_description: This dataset contains 100K hash keys, each with 5 fields
23+
and each field has a data size of 10 bytes.
24+
tested-groups:
25+
- hash
26+
tested-commands:
27+
- hexpireat
28+
redis-topologies:
29+
- oss-standalone
30+
build-variants:
31+
- gcc:15.2.0-amd64-debian-bookworm-default
32+
- gcc:15.2.0-arm64-debian-bookworm-default
33+
- dockerhub
34+
clientconfig:
35+
run_image: redislabs/memtier_benchmark:edge
36+
tool: memtier_benchmark
37+
arguments: ' --command "HEXPIREAT __key__ 2145916800 FIELDS 5 field:1 field:2 field:3 field:4 field:5 " --command-key-pattern="R" --key-minimum=1
38+
--key-maximum 100000 --test-time 120 -c 50 -t 4 --hide-histogram'
39+
resources:
40+
requests:
41+
cpus: '4'
42+
memory: 2g
43+
priority: 96
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-hash-hgetex-5-fields-10B-values
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys pre-loading
4+
HASHes in which the value has a data size of 10 Bytes. After pre-loading the data
5+
it issues HGETEX command.
6+
dbconfig:
7+
dataset_name: 1Mkeys-hash-5-fields-10B-size
8+
configuration-parameters:
9+
save: '""'
10+
check:
11+
keyspacelen: 100000
12+
preload_tool:
13+
run_image: redislabs/memtier_benchmark:edge
14+
tool: memtier_benchmark
15+
arguments: '"--data-size" "10" --command "HSETEX __key__ EX 3600 FIELDS 5 field:1 __data__ field:2
16+
__data__ field:3 __data__ field:4 __data__ field:5 __data__" --command-key-pattern="P"
17+
--key-minimum=1 --key-maximum 100001 -n allkeys -c 1 -t 1 --hide-histogram --pipeline
18+
50'
19+
resources:
20+
requests:
21+
memory: 2g
22+
dataset_description: This dataset contains 100K hash keys, each with 5 fields
23+
and each field has a data size of 10 bytes.
24+
tested-groups:
25+
- hash
26+
tested-commands:
27+
- hgetex
28+
redis-topologies:
29+
- oss-standalone
30+
build-variants:
31+
- gcc:15.2.0-amd64-debian-bookworm-default
32+
- gcc:15.2.0-arm64-debian-bookworm-default
33+
- dockerhub
34+
clientconfig:
35+
run_image: redislabs/memtier_benchmark:edge
36+
tool: memtier_benchmark
37+
arguments: ' --command "HGETEX __key__ EX 3600 FIELDS 5 field:1 field:2 field:3 field:4 field:5 " --command-key-pattern="R" --key-minimum=1
38+
--key-maximum 100000 --test-time 120 -c 50 -t 4 --hide-histogram'
39+
resources:
40+
requests:
41+
cpus: '4'
42+
memory: 2g
43+
priority: 96
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-hash-hpexpire-5-fields-10B-values
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys pre-loading
4+
HASHes in which the value has a data size of 10 Bytes. After pre-loading the data
5+
it issues HPEXPIRE command.
6+
dbconfig:
7+
dataset_name: 1Mkeys-hash-5-fields-10B-size
8+
configuration-parameters:
9+
save: '""'
10+
check:
11+
keyspacelen: 100000
12+
preload_tool:
13+
run_image: redislabs/memtier_benchmark:edge
14+
tool: memtier_benchmark
15+
arguments: '"--data-size" "10" --command "HSET __key__ field:1 __data__ field:2
16+
__data__ field:3 __data__ field:4 __data__ field:5 __data__ " --command-key-pattern="P"
17+
--key-minimum=1 --key-maximum 100001 -n allkeys -c 1 -t 1 --hide-histogram --pipeline
18+
50'
19+
resources:
20+
requests:
21+
memory: 2g
22+
dataset_description: This dataset contains 100K hash keys, each with 5 fields
23+
and each field has a data size of 10 bytes.
24+
tested-groups:
25+
- hash
26+
tested-commands:
27+
- hpexpire
28+
redis-topologies:
29+
- oss-standalone
30+
build-variants:
31+
- gcc:15.2.0-amd64-debian-bookworm-default
32+
- gcc:15.2.0-arm64-debian-bookworm-default
33+
- dockerhub
34+
clientconfig:
35+
run_image: redislabs/memtier_benchmark:edge
36+
tool: memtier_benchmark
37+
arguments: ' --command "HPEXPIRE __key__ 3600000 FIELDS 5 field:1 field:2 field:3 field:4 field:5 " --command-key-pattern="R" --key-minimum=1
38+
--key-maximum 100000 --test-time 120 -c 50 -t 4 --hide-histogram'
39+
resources:
40+
requests:
41+
cpus: '4'
42+
memory: 2g
43+
priority: 96
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-hash-hpexpireat-5-fields-10B-values
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys pre-loading
4+
HASHes in which the value has a data size of 10 Bytes. After pre-loading the data
5+
it issues HPEXPIREAT command ( expire ms is 2038, January 1 ).
6+
dbconfig:
7+
dataset_name: 1Mkeys-hash-5-fields-10B-size
8+
configuration-parameters:
9+
save: '""'
10+
check:
11+
keyspacelen: 100000
12+
preload_tool:
13+
run_image: redislabs/memtier_benchmark:edge
14+
tool: memtier_benchmark
15+
arguments: '"--data-size" "10" --command "HSET __key__ field:1 __data__ field:2
16+
__data__ field:3 __data__ field:4 __data__ field:5 __data__ " --command-key-pattern="P"
17+
--key-minimum=1 --key-maximum 100001 -n allkeys -c 1 -t 1 --hide-histogram --pipeline
18+
50'
19+
resources:
20+
requests:
21+
memory: 2g
22+
dataset_description: This dataset contains 100K hash keys, each with 5 fields
23+
and each field has a data size of 10 bytes.
24+
tested-groups:
25+
- hash
26+
tested-commands:
27+
- hpexpireat
28+
redis-topologies:
29+
- oss-standalone
30+
build-variants:
31+
- gcc:15.2.0-amd64-debian-bookworm-default
32+
- gcc:15.2.0-arm64-debian-bookworm-default
33+
- dockerhub
34+
clientconfig:
35+
run_image: redislabs/memtier_benchmark:edge
36+
tool: memtier_benchmark
37+
arguments: ' --command "HPEXPIREAT __key__ 2145916800000 FIELDS 5 field:1 field:2 field:3 field:4 field:5 " --command-key-pattern="R" --key-minimum=1
38+
--key-maximum 100000 --test-time 120 -c 50 -t 4 --hide-histogram'
39+
resources:
40+
requests:
41+
cpus: '4'
42+
memory: 2g
43+
priority: 96
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-load-hash-1-fields-with-1000B-values-expiration
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys loading HASHES
4+
with 1 field each. Each field value has a data size of 1000 Bytes and has expiration,
5+
and the encoding is hashtable.
6+
dbconfig:
7+
configuration-parameters:
8+
save: '""'
9+
check:
10+
keyspacelen: 0
11+
resources:
12+
requests:
13+
memory: 6g
14+
tested-groups:
15+
- hash
16+
tested-commands:
17+
- hsetex
18+
redis-topologies:
19+
- oss-standalone
20+
build-variants:
21+
- gcc:15.2.0-amd64-debian-bookworm-default
22+
- gcc:15.2.0-arm64-debian-bookworm-default
23+
- dockerhub
24+
clientconfig:
25+
run_image: redislabs/memtier_benchmark:edge
26+
tool: memtier_benchmark
27+
arguments: --test-time 120 --distinct-client-seed "--data-size" "1000" --command "HSETEX
28+
__key__ EX 60 FIELDS 1
29+
field:1 __data__ "
30+
--command-key-pattern="R" --random-data --key-minimum=1 --key-maximum 100000 -c 50 -t 4 --hide-histogram
31+
resources:
32+
requests:
33+
cpus: '4'
34+
memory: 2g
35+
priority: 5
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-load-hash-1-fields-with-10B-values-expiration
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys loading HASHES
4+
with 1 field each. Each field value has a data size of 10 Bytes and has expiration.
5+
dbconfig:
6+
configuration-parameters:
7+
save: '""'
8+
check:
9+
keyspacelen: 0
10+
resources:
11+
requests:
12+
memory: 6g
13+
tested-groups:
14+
- hash
15+
tested-commands:
16+
- hsetex
17+
redis-topologies:
18+
- oss-standalone
19+
build-variants:
20+
- gcc:15.2.0-amd64-debian-bookworm-default
21+
- gcc:15.2.0-arm64-debian-bookworm-default
22+
- dockerhub
23+
clientconfig:
24+
run_image: redislabs/memtier_benchmark:edge
25+
tool: memtier_benchmark
26+
arguments: --test-time 120 --distinct-client-seed "--data-size" "10" --command "HSETEX
27+
__key__ EX 60 FIELDS 1
28+
field:1 __data__ "
29+
--command-key-pattern="R" --key-minimum=1 --key-maximum 100000 -c 50 -t 4 --hide-histogram
30+
resources:
31+
requests:
32+
cpus: '4'
33+
memory: 2g
34+
priority: 5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-load-hash-1-fields-with-10B-values-long-expiration
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys loading HASHES
4+
with 1 fields each. Each field value has a data size of 10 Bytes and has really
5+
long expiration meaning expiration is not expected to affect performance during the benchmark.
6+
dbconfig:
7+
configuration-parameters:
8+
save: '""'
9+
check:
10+
keyspacelen: 0
11+
resources:
12+
requests:
13+
memory: 6g
14+
tested-groups:
15+
- hash
16+
tested-commands:
17+
- hsetex
18+
redis-topologies:
19+
- oss-standalone
20+
build-variants:
21+
- gcc:15.2.0-amd64-debian-bookworm-default
22+
- gcc:15.2.0-arm64-debian-bookworm-default
23+
- dockerhub
24+
clientconfig:
25+
run_image: redislabs/memtier_benchmark:edge
26+
tool: memtier_benchmark
27+
arguments: --test-time 120 --distinct-client-seed "--data-size" "10" --command "HSETEX
28+
__key__ EX 3600 FIELDS 1
29+
field:1 __data__"
30+
--command-key-pattern="R" --key-minimum=1 --key-maximum 100000 -c 50 -t 4 --hide-histogram
31+
resources:
32+
requests:
33+
cpus: '4'
34+
memory: 2g
35+
priority: 5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-load-hash-1-fields-with-10B-values-short-expiration
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys loading HASHES
4+
with 1 fields each. Each field value has a data size of 10 Bytes and has really short
5+
expiration, meaning expiration is expected to affect performance after 1st second.
6+
dbconfig:
7+
configuration-parameters:
8+
save: '""'
9+
check:
10+
keyspacelen: 0
11+
resources:
12+
requests:
13+
memory: 6g
14+
tested-groups:
15+
- hash
16+
tested-commands:
17+
- hsetex
18+
redis-topologies:
19+
- oss-standalone
20+
build-variants:
21+
- gcc:15.2.0-amd64-debian-bookworm-default
22+
- gcc:15.2.0-arm64-debian-bookworm-default
23+
- dockerhub
24+
clientconfig:
25+
run_image: redislabs/memtier_benchmark:edge
26+
tool: memtier_benchmark
27+
arguments: --test-time 120 --distinct-client-seed "--data-size" "10" --command "HSETEX
28+
__key__ EX 1 FIELDS 1
29+
field:1 __data__ "
30+
--command-key-pattern="R" --key-minimum=1 --key-maximum 100000 -c 50 -t 4 --hide-histogram
31+
resources:
32+
requests:
33+
cpus: '4'
34+
memory: 2g
35+
priority: 5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
version: 0.4
2+
name: memtier_benchmark-100Kkeys-load-hash-5-fields-with-1000B-values-expiration
3+
description: Runs memtier_benchmark, for a keyspace length of 100K keys loading HASHES
4+
with 5 field each. Each field value has a data size of 1000 Bytes and has expiration,
5+
and the encoding is hashtable.
6+
dbconfig:
7+
configuration-parameters:
8+
save: '""'
9+
check:
10+
keyspacelen: 0
11+
resources:
12+
requests:
13+
memory: 6g
14+
tested-groups:
15+
- hash
16+
tested-commands:
17+
- hsetex
18+
redis-topologies:
19+
- oss-standalone
20+
build-variants:
21+
- gcc:15.2.0-amd64-debian-bookworm-default
22+
- gcc:15.2.0-arm64-debian-bookworm-default
23+
- dockerhub
24+
clientconfig:
25+
run_image: redislabs/memtier_benchmark:edge
26+
tool: memtier_benchmark
27+
arguments: --test-time 120 --distinct-client-seed "--data-size" "1000" --command "HSETEX
28+
__key__ EX 60 FIELDS 5
29+
field:1 __data__ field:2 __data__ field:3 __data__ field:4 __data__ field:5
30+
__data__ "
31+
--command-key-pattern="R" --key-minimum=1 --random-data --key-maximum 100000 -c 50 -t 4 --hide-histogram
32+
resources:
33+
requests:
34+
cpus: '4'
35+
memory: 2g
36+
priority: 5

0 commit comments

Comments
 (0)