...
1Rekor Performance Tester
2========================
3
4Scripts to repeatably gather performance metrics for index storage insertion and
5retrieval in rekor.
6
7Usage
8-----
9
10Use terraform to set up the services in GCP:
11
12```
13cd terraform
14terraform init
15terraform plan
16terraform apply
17```
18
19Copy or clone this repository on to the bastion VM that terraform instantiates.
20Run this script from there:
21
22```
23export INSERT_RUNS=<N> # The number of inserts to perform and measure. This doesn't need to be terribly high.
24export SEARCH_ENTRIES=<M> # The number of entries to upload to the database out of band to search against. This should be sufficiently high to represent a real database.
25export INDEX_BACKEND=<redis|mysql> # The index backend to test against
26export REGION=<region> # The GCP region where the rekor services are deployed
27./index-performance.sh
28```
29
30On the first run, `indices.csv` will be populated with fake search entries,
31which will take a while depending on how big $SEARCH_ENTRIES is. This only
32happens once as long as indices.csv is not removed.
33
34Run `index-performance.sh` against each backend. Then plot the results:
35
36```
37./plot.sh
38```
39
40Copy the resulting `graph.png` back to your local host.
View as plain text