Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... ).
Project description
redisbench-admin
Redis benchmark run helper can help you with the following tasks:
- Setup abd teardown of benchmarking infrastructure specified on redis-performance/testing-infrastructure
- Setup and teardown of an Redis and Redis Modules DBs for benchmarking
- Management of benchmark data and specifications across different setups
- Running benchmarks and recording results
- Exporting performance results in several formats (CSV, RedisTimeSeries, JSON)
- Finding on-cpu, off-cpu, io, and threading performance problems by attaching profiling tools/probers ( perf (a.k.a. perf_events), bpf tooling, vtune )
- [SOON] Finding performance problems by attaching telemetry probes
Current supported benchmark tools:
- redis-benchmark
- memtier_benchmark
- redis-benchmark-go
- YCSB
- tsbs
- redisgraph-benchmark-go
- ftsb_redisearch
- ann-benchmarks
Installation
Installation is done using pip, the package installer for Python, in the following manner:
python3 -m pip install redisbench-admin
Profiler daemon
You can use the profiler daemon by itself in the following manner. On the target machine do as follow:
pip3 install --upgrade pip
pip3 install redisbench-admin --ignore-installed PyYAML
# install perf
apt install linux-tools-common linux-tools-generic linux-tools-`uname -r` -y
# ensure perf is working
perf --version
# install awscli
snap install aws-cli --classic
# configure aws
aws configure
# start the perf-daemon
perf-daemon start
WARNING:root:Unable to detected github_actor. caught the following error: No section: 'user'
Writting log to /tmp/perf-daemon.log
Starting perf-daemon. PID file /tmp/perfdaemon.pid. Daemon workdir: /root/RedisGraph
# check daemon is working appropriatelly
curl localhost:5000/ping
# start a profile
curl -X POST localhost:5000/profiler/perf/start/<pid to profile>
# stop a profile
curl -X POST -d '{"aws_access_key_id":$AWS_ACCESS_KEY_ID,"aws_secret_access_key":$AWS_SECRET_ACCESS_KEY}' localhost:5000/profiler/perf/stop/<pid to profile>
Development
- Install pypoetry to manage your dependencies and trigger tooling.
pip install poetry
- Installing dependencies from lock file
poetry install
Running formaters
poetry run black .
Running linters
poetry run flake8
Running tests
A test suite is provided, and can be run with:
$ tox
To run a specific test:
$ tox -- tests/test_redistimeseries.py
To run a specific test with verbose logging:
# tox -- -vv --log-cli-level=INFO tests/test_run.py
License
redisbench-admin is distributed under the BSD3 license - see LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file redisbench_admin-0.11.13.tar.gz
.
File metadata
- Download URL: redisbench_admin-0.11.13.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.10.7 Linux/5.19.0-46-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0e5154397bd63d39d44b4a49950d5922f578ff97405ee278180a66dd39ee416 |
|
MD5 | 1cea1f4550f1f1ccafa1e4add0f7031b |
|
BLAKE2b-256 | eb22cc7af75552e1c94f25455ea5ad0558ba35c88aa19d4f4d19115f42a3bc4b |
File details
Details for the file redisbench_admin-0.11.13-py3-none-any.whl
.
File metadata
- Download URL: redisbench_admin-0.11.13-py3-none-any.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.10.7 Linux/5.19.0-46-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01dfb735fb12ccede8762c88f9bafbc0108a0c259ddce91f86bfbb6752937d7f |
|
MD5 | 4da807f3bc9e86df5843b335384d5512 |
|
BLAKE2b-256 | cbe37903d602def67f58f42f585c1d6df536f619456eb34ed0968e53373cf678 |