When to use Vector
Decide when Vector is the right primitive compared with relational queries, keyword search, or other storage backends.
Use Vector when the app needs similarity search over embeddings instead of exact-match or relational lookup.
Choose Vector when
Vector is usually the right fit when:
- the app stores embeddings and queries by semantic similarity
- you want named vector indexes in the repo
- provider portability matters across the supported vector backends
- the app needs a common handle surface for insert, fetch, and query operations
Vector vs relational queries
Choose Vector when the primary query is nearest-neighbor similarity.
Choose a relational database when the primary query is exact filtering, joins, aggregation, or transactional writes.
Many apps use both: a relational database for source records and a vector index for semantic search.
Vector vs KV or Blob
Choose Vector when the stored value is an embedding plus searchable metadata.
Choose KV or Blob when you need durable keyed values or file storage, not semantic search.
When Vector is not the right primitive
Vector is usually the wrong fit when:
- the app does not use embeddings
- exact search is enough
- there is no value in abstracting over the provider