-
Notifications
You must be signed in to change notification settings - Fork 82
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* feat: Update benchmarks * fix: Improve blog * feat: Add result files with 1 and 100 parallel clients * fix: Add elasticsearch benchmark numbers from dbpedia 1M openai embeddings * feat: Make mean time (latency) the default metric for the 2nd plot * feat: Improve conclusions based on es results * fix: Make charts work on changing dataset * fix: Typo in table * feat: Update results with quantization * fix: Show a single graph to keep things simple * fix: Improve words * review fixes * add link to open-source * feat: Improve units to make results more readable * fix: Small grammatical mistake * fix: Make search threads value constant based on plot metric * feat: Make dataset num vectors more readable * fix: Spacing in table * feat: Add results from the latest Redis benchmarks * feat: Update benchmarks page * feat: Update date and some of the points * feat: Update benchmarks and content * chores: Improve observations * feat: Improve observations and put it after the graph --------- Co-authored-by: generall <[email protected]>
- Loading branch information
Showing
12 changed files
with
42,501 additions
and
147 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,32 @@ | ||
--- | ||
draft: false | ||
id: 2 | ||
title: How vector search databases should be tested? | ||
title: How vector search should be benchmarked? | ||
weight: 1 | ||
--- | ||
|
||
# Benchmarking Vector Search Engines | ||
# Benchmarking Vector Databases | ||
|
||
As an Open Source vector search engine, we are often compared to the competitors and asked about our performance vs the other tools. | ||
But the answer was never simple, as the world of vector databases lacked a unified open benchmark that would show the differences. | ||
So we created one, making some bold assumptions about how it should be done. | ||
Here we describe why we think that’s the best way. | ||
At Qdrant, performance is the top-most priority. We always make sure that we use system resources efficiently so you get the **fastest and most accurate results at the cheapest cloud costs**. So all of our decisions from [choosing Rust](/articles/why-rust), [io optimisations](/articles/io_uring), [serverless support](/articles/serverless), [binary quantization](/articles/binary-quantization), to our [fastembed library](/articles/fastembed) are all based on our principle. In this article, we will compare how Qdrant performs against the other vector search engines. | ||
|
||
That is why we perform our benchmarks on exactly the same hardware, which you can rent from any cloud provider. | ||
It does not guarantee the best performance, making the whole process affordable and reproducible, so you can easily repeat it yourself. | ||
So in our benchmarks, we **focus on the relative numbers**, so it is possible to **compare** the performance of different engines given equal resources. | ||
Here are the principles we followed while designing these benchmarks: | ||
|
||
The list will be updated: | ||
- We do comparative benchmarks, which means we focus on **relative numbers** rather than absolute numbers. | ||
- We use affordable hardware, so that you can reproduce the results easily. | ||
- We run benchmarks on the same exact machines to avoid any possible hardware bias. | ||
- All the benchmarks are [open-sourced](https://github.com/qdrant/vector-db-benchmark), so you can contribute and improve them. | ||
|
||
* Upload & Search speed on single node - [Benchmark](/benchmarks/single-node-speed-benchmark/) | ||
* Filtered search benchmark - [Benchmark](/benchmarks/#filtered-search-benchmark) | ||
* Memory consumption benchmark - TBD | ||
* Cluster mode benchmark - TBD | ||
<details> | ||
<summary> Scenarios we tested </summary> | ||
|
||
Some of our experiment design decisions are described at [F.A.Q Section](/benchmarks/#benchmarks-faq). | ||
1. Upload & Search benchmark on single node [Benchmark](/benchmarks/single-node-speed-benchmark/) | ||
2. Filtered search benchmark - [Benchmark](/benchmarks/#filtered-search-benchmark) | ||
3. Memory consumption benchmark - Coming soon | ||
4. Cluster mode benchmark - Coming soon | ||
|
||
Suggest your variants of what you want to test in our [Discord channel](https://qdrant.to/discord)! | ||
</details> | ||
|
||
</br> | ||
|
||
Some of our experiment design decisions are described in the [F.A.Q Section](/benchmarks/#benchmarks-faq). | ||
Reach out to us on our [Discord channel](https://qdrant.to/discord) if you want to discuss anything related Qdrant or these benchmarks. |
4 changes: 2 additions & 2 deletions
4
qdrant-landing/content/benchmarks/filtered-search-benchmark.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
13 changes: 13 additions & 0 deletions
13
qdrant-landing/content/benchmarks/single-node-speed-benchmark-2022.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
draft: false | ||
id: 1 | ||
title: Single node benchmarks (2022) | ||
single_node_title: Single node benchmarks | ||
single_node_data: /benchmarks/result-2022-08-10.json | ||
preview_image: /benchmarks/benchmark-1.png | ||
date: 2022-08-23 | ||
weight: 2 | ||
Unlisted: true | ||
--- | ||
|
||
This is an archived version of Single node benchmarks. Please refer to the new version [here](/benchmarks/single-node-speed-benchmark/). |
Oops, something went wrong.