<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Optimization on Qdrant - Vector Search Engine</title><link>https://qdrant.tech/documentation/ops-optimization/</link><description>Recent content in Optimization on Qdrant - Vector Search Engine</description><generator>Hugo</generator><language>en-us</language><managingEditor>info@qdrant.tech (Andrey Vasnetsov)</managingEditor><webMaster>info@qdrant.tech (Andrey Vasnetsov)</webMaster><item><title>Optimize Performance</title><link>https://qdrant.tech/documentation/ops-optimization/optimize/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://qdrant.tech/documentation/ops-optimization/optimize/</guid><description>&lt;h1 id="optimizing-qdrant-performance-three-scenarios"&gt;Optimizing Qdrant Performance: Three Scenarios&lt;/h1&gt;
&lt;p&gt;Different use cases require different balances between memory usage, search speed, and precision. Qdrant is designed to be flexible and customizable so you can tune it to your specific needs.&lt;/p&gt;
&lt;p&gt;This guide will walk you three main optimization strategies:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;High Speed Search &amp;amp; Low Memory Usage&lt;/li&gt;
&lt;li&gt;High Precision &amp;amp; Low Memory Usage&lt;/li&gt;
&lt;li&gt;High Precision &amp;amp; High Speed Search&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://qdrant.tech/docs/tradeoff.png" alt="qdrant resource tradeoffs"&gt;&lt;/p&gt;
&lt;h2 id="1-high-speed-search-with-low-memory-usage"&gt;1. High-Speed Search with Low Memory Usage&lt;/h2&gt;
&lt;p&gt;To achieve high search speed with minimal memory usage, you can store vectors on disk while minimizing the number of disk reads. Vector quantization is a technique that compresses vectors, allowing more of them to be stored in memory, thus reducing the need to read from disk.&lt;/p&gt;</description></item><item><title>Optimizer</title><link>https://qdrant.tech/documentation/ops-optimization/optimizer/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://qdrant.tech/documentation/ops-optimization/optimizer/</guid><description>&lt;h1 id="optimizer"&gt;Optimizer&lt;/h1&gt;
&lt;p&gt;It is much more efficient to apply changes in batches than perform each change individually, as many other databases do. Qdrant here is no exception. Since Qdrant operates with data structures that are not always easy to change, it is sometimes necessary to rebuild those structures completely.&lt;/p&gt;
&lt;p&gt;Storage optimization in Qdrant occurs at the segment level (see &lt;a href="https://qdrant.tech/documentation/manage-data/storage/"&gt;storage&lt;/a&gt;).
In this case, the segment to be optimized remains readable for the time of the rebuild.&lt;/p&gt;</description></item><item><title>Read-Write Contention</title><link>https://qdrant.tech/documentation/ops-optimization/read-write-contention/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://qdrant.tech/documentation/ops-optimization/read-write-contention/</guid><description>&lt;h1 id="troubleshoot-read-write-contention"&gt;Troubleshoot Read-Write Contention&lt;/h1&gt;
&lt;p&gt;Qdrant is designed to index and optimize data as it arrives. While serving search queries, Qdrant&amp;rsquo;s &lt;a href="https://qdrant.tech/documentation/ops-optimization/optimizer/"&gt;background optimizer&lt;/a&gt; continuously builds &lt;a href="https://qdrant.tech/documentation/manage-data/indexing/#vector-index"&gt;HNSW indexes&lt;/a&gt;, merges segments, and applies quantization. Queries and the background optimizer compete for the same CPU time, memory bandwidth, and I/O (read-write contention). Qdrant&amp;rsquo;s defaults don&amp;rsquo;t prioritize either, but you can make several configuration changes to shift the balance.&lt;/p&gt;
&lt;p&gt;This guide walks through a set of configuration changes to improve read latency under heavy write load. The steps are ordered by impact: start with step 1 and stop when your latency target is met. After each step, measure read latency and write throughput. If a change doesn&amp;rsquo;t improve latency enough or causes unacceptable throughput loss, revert it and move to the next step.&lt;/p&gt;</description></item></channel></rss>