How Should We Interpret Vector Database Retrieval at Scale: KNN or ANN by Default?

A data scientist is implementing a vector database for a recommendation system that needs to handle millions of product embeddings. What should they understand about the results returned by the vector database?

However, the question doesn’t specify whether the retrieval system uses brute-force KNN or an Approximate Nearest Neighbor (ANN) algorithm.

  • If the system uses brute-force KNN, then “query time will increase linearly as the number of vectors increases” is a correct answer.
  • If the system uses ANN, then it’s more accurate to say “the results might not always be the exact nearest neighbors, but searches can be completed substantially faster.”

Given that the question only mentions “millions of embeddings” and not the retrieval method, should we assume that modern vector databases default to using ANN for scalability?
Or is it fair to answer based on the information given, considering both KNN and ANN possibilities?

How should we approach such questions where the retrieval algorithm is not explicitly stated?

Given that the scale of products is in millions,

Yes.