You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[add] Included documentation on how to do a differential analysis bet… (#180)
* [add] Included documentation on how to do a differential analysis between branches
* [add] Enabled user-based access to RTS cluster
* [add] Enabled user-based access to RTS cluster
Copy file name to clipboardExpand all lines: docs/Readme.md
+89Lines changed: 89 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,6 +94,95 @@ a standalone redis-server, copy the dataset and module files to the DB VM and ma
94
94
- At the end of each benchmark an output json file is stored with this benchmarks folder and will be named like `<start time>-<deployment type>-<git org>-<git repo>-<git branch>-<test name>-<git sha>.json`
95
95
- In the case of a uncaught exception after we've deployed the environment the benchmark script will always try to teardown the created environment.
96
96
97
+
# Comparing feature branches
98
+
99
+
You can use the data stored in redistimeseries of different branches to portray a differential analysis between them.
100
+
To be able to fetch the RedisTimeseries data, you need to pass either the `--redistimeseries_host,--redistimeseries_port,--redistimeseries_auth,--redistimeseries_user`
101
+
or the equivalent `PERFORMANCE_RTS_HOST,PERFORMANCE_RTS_PORT,PERFORMANCE_RTS_AUTH,PERFORMANCE_RTS_USER`.
102
+
**To have them, you should ask the performance team for the read-only access keys.**
103
+
104
+
Depending on the metric type ( example of latency / throughput ) the improvement is checked either via `higher-better`
105
+
mode or `lower-better` mode.
106
+
107
+
By default, the metric used is `Tests.Overall.rps` and the metric mode is `higher-better`.
108
+
You can change the metric and metric mode via `--metric_name` and `--metric_mode` parameters.
109
+
110
+
**Important Note:** The current differential analysis focus only on the last datapoint of result of each branch
111
+
( meaning this can and will be improved in the future to take into account multi-datapoints per branch ).
112
+
113
+
By default, the tool checks for the last week datapoints, and uses the most recent one per branch.
114
+
You can control the time-range of the comparison using `--from_timestamp` and `--to_timestamp` arguments.
115
+
116
+
Bellow, you can find an example comparing RedisJSON 1.0 vs master branch:
WARNING:root:Unable to fill git vars. caught the following error:
132
+
Effective log level set to INFO
133
+
INFO:root:Using: redisbench-admin 0.4.7
134
+
2021-08-12 12:01:40,213 INFO Using: redisbench-admin 0.4.7
135
+
INFO:root:Checking connection to RedisTimeSeries with user: (....), host: (....), port: (....)
136
+
WARNING:root:Based on test-cases set (key=ci.benchmarks.redislabs/circleci/RedisJSON/RedisJSON:testcases) we have 35 distinct benchmarks.
137
+
2021-08-12 12:01:40,613 WARNING Based on test-cases set (key=ci.benchmarks.redislabs/circleci/RedisJSON/RedisJSON:testcases) we have 35 distinct benchmarks.
138
+
INFO:root:Printing differential analysis between branches
139
+
2021-08-12 12:01:47,591 INFO Printing differential analysis between branches
140
+
# Comparison between 1.0 and master for metric: Tests.Overall.rps
141
+
| Test Case |Baseline value|Comparison Value|% change (higher-better)|
0 commit comments