Database / Qdrant Vector DB Interview questions
How does Qdrant implement filtering during HNSW traversal?
Rather than running a full vector search first and filtering the results afterward (which risks returning too few results if the filter is highly selective), Qdrant integrates payload filtering directly into the HNSW graph traversal itself, checking each candidate node's filter eligibility as the search explores the graph.
As the graph traversal visits each candidate, Qdrant checks whether that point satisfies the filter condition; matching points become eligible results, while non-matching points are excluded from the result set but can still be traversed through to reach other, potentially matching, parts of the graph, since excluding a non-matching node from the search path entirely could cause the traversal to miss legitimate matches beyond it.
For highly selective filters where very few points in the entire collection actually match, pure graph traversal alone can become inefficient (needing to explore a large fraction of the graph to find enough matches); this is exactly the scenario Qdrant's ACORN-1 method specifically targets, adapting the search strategy for cases where the filter, not the vector similarity, is the limiting factor.
More Related questions...