Questions
2 of 18
1Why did Qdrant consolidate search, recommend, and discovery operations into the Universal Query API?
2What is a prefetch stage in Qdrant's Universal Query API, and why would you use multiple prefetches?
3How do Reciprocal Rank Fusion and Distribution-Based Score Fusion differ when combining Qdrant prefetch results?
4How would you retrieve 500 candidates with dense vectors and rerank them using a ColBERT multivector?
5What is Qdrant's recommend query mode, and how is it different from plain similarity search?
6How does Qdrant combine vector similarity search with structured payload filters?
7What are must, should, and must_not clauses in a Qdrant payload filter?
8Why can filtering after an ANN search return too few results when the filter is highly selective?
9How does Qdrant's filtered vector search avoid the classic post-filtering problem?
10How would you implement a geo-radius search for similar items within 5 km of a location in Qdrant?
11Why should you create payload indexes for fields that are filtered frequently at scale?
12What payload index types does Qdrant support, and how would you choose one for tags versus price?
13What is a full-text payload index used for, and how does it differ from an exact-match keyword index?
14What is the cost of creating too many payload indexes on a high-write Qdrant collection?
15Why should point uploads be batched instead of sending one upsert request per point?
16What is Qdrant's Scroll API used for, and why is it preferable to vector search when iterating through matching points?
17How does Qdrant Scroll pagination avoid the main performance problem of large SQL OFFSET pagination?
18What is a realistic batch size for bulk-loading millions of Qdrant points, and what factors should influence it?
02 / 18

What is a prefetch stage in Qdrant's Universal Query API, and why would you use multiple prefetches?

Prefetch as candidate generation

A prefetch is an earlier retrieval stage that generates candidate points for a later query stage. Instead of immediately returning the first search result, Qdrant can retrieve a larger candidate set and then use those points as the input to fusion or reranking.

Multiple prefetches are useful when candidate generation comes from different retrieval signals. A common example is dense semantic retrieval plus sparse lexical retrieval. Each prefetch can retrieve its own candidates, after which Qdrant can fuse or rerank the combined candidate set.

The key engineering reason is recall first, precision second. Cheap retrieval stages can cast a wide net, while a more expensive reranker operates on a smaller candidate set. The trade-off is additional computation and latency, so candidate limits should be tuned against end-to-end quality.

A common mistake is assuming prefetch means fetching data from another database. It is a retrieval stage within the Qdrant query execution plan. The exact nesting and supported combinations depend on the Qdrant version.

javascript
  1. 1

    Prefetch stages generate candidates for later query processing

  2. 2

    Multiple prefetches can represent different retrieval signals

  3. 3

    Candidate generation can optimize recall before expensive reranking

  4. 4

    More prefetch work increases compute and latency

Difficulty: 5/10
Topics: Prefetch, Multi-stage retrieval, Hybrid search

Scenario Questions

0-2 years experience
  1. 1

    Your application needs both semantic and keyword matching. Why might two prefetch stages be useful?

  2. 2

    A prefetch returns 200 candidates but the API returns only 10 results. Why retrieve more than you finally display?

2-5 years experience
  1. 1

    Dense retrieval has poor recall for exact product codes while sparse retrieval handles them well. How would you combine the two candidate sets?

  2. 2

    Increasing a prefetch limit improves recall but hurts p95 latency. How would you tune the candidate count?

5-8 years experience
  1. 1

    Your hybrid search uses dense and sparse prefetches with very different result distributions. How would you decide whether to fuse or rerank their candidates?

  2. 2

    A reranker is expensive enough that scoring 5,000 candidates is unacceptable. How would you structure prefetch stages to control its input size?

8+ years experience
  1. 1

    You need a reusable retrieval architecture for semantic, lexical, and modality-specific candidate generation. How would you design prefetch stages and downstream ranking so new signals can be added safely?

  2. 2

    A retrieval pipeline has excellent recall but unacceptable p99 latency because several prefetches run concurrently. How would you reason about reducing cost without destroying recall?

Follow-up Questions

  • Why retrieve more candidates in a prefetch than the final result count?
  • How would you choose candidate limits for two different prefetch stages?