Skip to content

Commit 1054b64

Browse files
Update README.md to include easy docker steps and how to check results fast.
1 parent 989d3b1 commit 1054b64

File tree

1 file changed

+78
-53
lines changed

1 file changed

+78
-53
lines changed

README.md

Lines changed: 78 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,84 @@ scenario against which it should be tested. A specific scenario may assume
1616
running the server in a single or distributed mode, a different client
1717
implementation and the number of client instances.
1818

19+
20+
## Quick Start
21+
22+
### Quick Start with Docker
23+
24+
The easiest way to run vector-db-benchmark is using Docker. We provide pre-built images on Docker Hub.
25+
26+
```bash
27+
# Pull the latest image
28+
docker pull filipe958/vector-db-benchmark:latest
29+
30+
# Run with help
31+
docker run --rm filipe958/vector-db-benchmark:latest run.py --help
32+
33+
# Check which datasets are available
34+
docker run --rm filipe958/vector-db-benchmark:latest run.py --describe datasets
35+
36+
# Basic Redis benchmark with local Redis
37+
docker run --rm -v $(pwd)/results:/app/results --network=host \
38+
filipe958/vector-db-benchmark:latest \
39+
run.py --host localhost --engines redis-default-simple --datasets glove-25-angular
40+
41+
# At the end of the run, you will find the results in the `results` directory. Lets open the summary one, in the precision summary
42+
43+
$ jq ".precision_summary" results/*-summary.json
44+
{
45+
"0.91": {
46+
"qps": 1924.5,
47+
"p50": 49.828,
48+
"p95": 58.427
49+
},
50+
"0.94": {
51+
"qps": 1819.9,
52+
"p50": 51.68,
53+
"p95": 66.83
54+
},
55+
"0.9775": {
56+
"qps": 1477.8,
57+
"p50": 65.368,
58+
"p95": 73.849
59+
},
60+
"0.9950": {
61+
"qps": 1019.8,
62+
"p50": 95.115,
63+
"p95": 106.73
64+
}
65+
}
66+
```
67+
68+
### Using with Redis
69+
70+
For testing with Redis, start a Redis container first:
71+
72+
```bash
73+
# Start Redis container
74+
docker run -d --name redis-test -p 6379:6379 redis:8.2-rc1-bookworm
75+
76+
# Run benchmark against Redis
77+
78+
docker run --rm -v $(pwd)/results:/app/results --network=host \
79+
filipe958/vector-db-benchmark:latest \
80+
run.py --host localhost --engines redis-default-simple --dataset random-100
81+
82+
# Or use the convenience script
83+
./docker-run.sh -H localhost -e redis-default-simple -d random-100
84+
85+
86+
# Clean up Redis container when done
87+
docker stop redis-test && docker rm redis-test
88+
```
89+
90+
### Available Docker Images
91+
92+
- **Latest**: `filipe958/vector-db-benchmark:latest`
93+
94+
For detailed Docker setup and publishing information, see [DOCKER_SETUP.md](DOCKER_SETUP.md).
95+
96+
1997
## Data sets
2098

2199
We have a number of precomputed data sets. All data sets have been pre-split into train/test and include ground truth data for the top-100 nearest neighbors.
@@ -71,59 +149,6 @@ We have a number of precomputed data sets. All data sets have been pre-split int
71149
| Random Match Keyword Small Vocab-256: Small vocabulary keyword matching (no filters) | 256 | 1,000,000 | 10,000 | 100 | Cosine |
72150

73151

74-
## 🐳 Docker Usage
75-
76-
The easiest way to run vector-db-benchmark is using Docker. We provide pre-built images on Docker Hub.
77-
78-
### Quick Start with Docker
79-
80-
```bash
81-
# Pull the latest image
82-
docker pull filipe958/vector-db-benchmark:latest
83-
84-
# Run with help
85-
docker run --rm filipe958/vector-db-benchmark:latest run.py --help
86-
87-
88-
# Basic Redis benchmark with local Redis (recommended)
89-
docker run --rm -v $(pwd)/results:/app/results --network=host \
90-
filipe958/vector-db-benchmark:latest \
91-
run.py --host localhost --engines redis-default-simple --dataset random-100
92-
93-
# Without results output
94-
docker run --rm --network=host filipe958/vector-db-benchmark:latest \
95-
run.py --host localhost --engines redis-default-simple --dataset random-100
96-
97-
```
98-
99-
### Using with Redis
100-
101-
For testing with Redis, start a Redis container first:
102-
103-
```bash
104-
# Start Redis container
105-
docker run -d --name redis-test -p 6379:6379 redis:8.2-rc1-bookworm
106-
107-
# Run benchmark against Redis
108-
109-
docker run --rm -v $(pwd)/results:/app/results --network=host \
110-
filipe958/vector-db-benchmark:latest \
111-
run.py --host localhost --engines redis-default-simple --dataset random-100
112-
113-
# Or use the convenience script
114-
./docker-run.sh -H localhost -e redis-default-simple -d random-100
115-
116-
117-
# Clean up Redis container when done
118-
docker stop redis-test && docker rm redis-test
119-
```
120-
121-
### Available Docker Images
122-
123-
- **Latest**: `filipe958/vector-db-benchmark:latest`
124-
125-
For detailed Docker setup and publishing information, see [DOCKER_SETUP.md](DOCKER_SETUP.md).
126-
127152
## How to run a benchmark?
128153

129154
Benchmarks are implemented in server-client mode, meaning that the server is

0 commit comments

Comments
 (0)