--- title: "Overview" slug: "dev-vector-search-overview" description: "Unlock the power of VAST Vector Search for efficient nearest-neighbour search over embeddings, enhancing your SQL queries and data retrieval capabilities." updated: 2026-10-30T18:18:51Z published: 2026-10-30T18:18:51Z canonical: "docs.vastdata.com/dev-vector-search-overview" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.vastdata.com/llms.txt > Use this file to discover all available pages before exploring further. # Overview *Applies to VAST Cluster 5.5.* VAST Vector Search is nearest-neighbour search over embeddings stored in VAST DataBase tables. A vector is a **column type on VAST DataBase**: you add a fixed-length vector column to an ordinary table, and you can give that column a vector index when you create the table. You search with SQL through the VAST Query Engine: compute a distance, sort by it, and keep the first *k* rows. These docs are for people who **build on** Vector Search. Enabling the Query Engine and granting access are tasks for your platform team; see [setup](/develop/docs/dev-vector-search-operations-setup) for what to ask for. ## What you get - **The index lives in the table.** A vector index arranges the table's data by distance on one vector column, so a search opens the most promising parts of the table and skips the rest ([Vector database index](/docs-5-5/docs/vector-database-index)). See [architecture](/develop/docs/dev-vector-search-concepts-architecture). - **Search is SQL.** A search is a `SELECT` that computes a distance, sorts by it ascending and keeps the first *k* rows. Ordinary `WHERE` filters work alongside it ([Vector search](/docs-5-5/docs/vector-search#filtering-vector-searches)). See [query design](/develop/docs/dev-vector-search-guides-query-design). - **New rows are searchable straight away.** Adding rows to the index takes some time, but newly inserted vectors can be found by search as soon as the insert commits. - **Your security rules still apply.** Identity policies gate who can create, load and search, and rows a user isn't allowed to see don't appear in their results ([Vector search](/docs-5-5/docs/vector-search#filtering-vector-searches)). See [security](/develop/docs/dev-vector-search-operations-security). - **It's an ordinary VAST DataBase table.** Metadata and the embedding sit in the same row, in the same transactions, on the same cluster storage as your other tables. ## How you access it ![A vector is a column type on a VAST DataBase table: the table holds an ID, metadata and a fixed-length embedding column, and can have a vector index, a hierarchy of clusters defined when the table is created; the small tree drawn in the index box is schematic. Embeddings come from your pipeline. They are loaded with the Python SDK (insert or import_files), or through the Query Engine with SQL INSERT or ADBC bulk ingest. Your application searches through the VAST Query Engine with its ADBC driver, using a distance function in ORDER BY with a LIMIT; the SDK's vector_search also runs through the Query Engine. Identity policies gate DDL, DML and search, and row and column security applies to results. The Trino and Spark connectors don't support vector index-based search.](https://cdn.us.document360.io/89b91113-5dc6-49db-86ec-57b16dc8ce56/Images/Documentation/vector-search-fit-v2.svg?sv=2026-02-06&spr=https&st=2026-11-08T08%3A54%3A54Z&se=2026-11-08T09%3A54%3A54Z&sr=c&sp=r&sig=BM1nl%2Bd8mQEXC7ttdw4EbwbWloOtj1CrWp8mEF%2B7clk%3D) *A vector-indexed table is a VAST DataBase table: load it with the Python SDK or SQL, and search through the Query Engine.* | Client | Use it for | Start here | | --- | --- | --- | | **VAST Query Engine** (ADBC driver) | SQL that creates indexed tables, loads rows (SQL `INSERT` or ADBC bulk ingest) and searches them. Search through the Query Engine is the path that uses the vector index. | [Quickstart](/develop/docs/dev-vector-search-quickstart), [ADBC](/develop/docs/dev-vector-search-integrations-adbc) | | **Python SDK** (`vastdb`) | Creating indexed tables (`VectorIndexSpec`), loading Arrow data and Parquet files, and `vector_search()`, which runs its search through the Query Engine ([Supported query engines](/docs-5-5/docs/supported-query-engines)) | [Python SDK](/develop/docs/dev-vector-search-integrations-python-sdk) | | **Trino, Spark and Dremio connectors** | Not for search: they don't support vector index-based search | [Limits](/develop/docs/dev-vector-search-reference-limits) | Your client reaches the Query Engine through a virtual IP pool with the Query Engine role ([VAST Query Engine](/docs-5-5/docs/vast-query-engine#creating-virtual-ip-pools-for-the-vast-query-engine)). [Setup](/develop/docs/dev-vector-search-operations-setup) lists the endpoints and permissions you need. A vector-indexed table is a VAST DataBase table, so the VAST DataBase docs on schemas, transactions and permissions apply to it, and these pages link to them rather than repeat them. The table side, such as what a vector index can be combined with, is covered in [table structures: vector-indexed tables](/develop/docs/dev-database-concepts-architecture-table-structures#vector-indexed-tables) and [limits: combining table structures](/develop/docs/dev-database-reference-limits#combining-table-structures). ## Use cases and considerations Example use cases: - **Retrieval for RAG.** Store document chunks, their metadata and their embeddings in one row, and retrieve the top *k* rows with SQL filters such as language, tenant or date. See [RAG retrieval](/develop/docs/dev-vector-search-guides-rag-retrieval). - **Semantic search** over documents, images, or embeddings derived from video. - **Near-duplicate detection** with Euclidean or cosine distance. - **Filtered nearest-neighbour search,** where metadata filters and vector similarity work together in one query. Important to note: - **Some decisions are made once, when you create the table.** The index, its distance metric and its quantization are set at creation: you can't add the index later, remove it or change the metric, and there's no way to change the quantization afterwards. A vector index also rules out sorting and partitioning (5.5.0 release notes), and the table can't be replicated. Read [design a vector table](/develop/docs/dev-vector-search-guides-table-design) and [limits](/develop/docs/dev-vector-search-reference-limits) before you create one. - **Search runs through the VAST Query Engine.** The VAST connectors for Trino, Spark and Dremio don't support vector index-based search. See [limits](/develop/docs/dev-vector-search-reference-limits). - **It has its own SQL and client surface.** It isn't API-compatible with pgvector or Pinecone; see [migrate to VAST Vector Search](/develop/docs/dev-vector-search-guides-migrate). - **For exact matches or primary-key lookups,** you don't need a vector index: use ordinary SQL filters, such as `WHERE id = …`. ## Related products and features | You want to… | Go to | | --- | --- | | Understand the table underneath: schemas, transactions, permissions | [VAST DataBase overview](/develop/docs/dev-database-overview) and [concepts](/develop/docs/dev-database-concepts-index) | | Compute embeddings on the cluster as files and objects arrive | [VAST DataEngine](/develop/docs/dev-dataengine-overview), and its [VAST DataBase and Vector Search](/develop/docs/dev-dataengine-integrations-vast-database-and-vector-search) patterns | | Stream events into VAST DataBase tables | [VAST Event Broker](/develop/docs/dev-event-broker-overview) | | Create indexed tables from CI with the REST API, vastpy or Terraform | [CI/CD and automation](/develop/docs/dev-vector-search-operations-ci-cd) | | Find white papers, webinars and other vector database material | [VAST DataBase & Vector Database Resources](https://kb.vastdata.com/docs/vast-database-vector-database-resources) on the KB | ## What's in this section - **Overview and quickstart:** this overview, the [quickstart](/develop/docs/dev-vector-search-quickstart) (create an indexed table, insert rows and search them) and the [release notes](/develop/docs/dev-vector-search-release-notes). - **Concepts:** [the vector index](/develop/docs/dev-vector-search-concepts-index) (objects, lifecycle and search rules) and [architecture](/develop/docs/dev-vector-search-concepts-architecture) (how the index is built and searched on the cluster). - **Guides:** [design a vector table](/develop/docs/dev-vector-search-guides-table-design), [create an index](/develop/docs/dev-vector-search-guides-create-an-index), [ingest](/develop/docs/dev-vector-search-guides-ingest), [query design](/develop/docs/dev-vector-search-guides-query-design), [filters](/develop/docs/dev-vector-search-guides-filters), [quantization](/develop/docs/dev-vector-search-guides-quantization), [measure recall and latency](/develop/docs/dev-vector-search-guides-developer-observability), [RAG retrieval](/develop/docs/dev-vector-search-guides-rag-retrieval) and [migrate to VAST Vector Search](/develop/docs/dev-vector-search-guides-migrate). - **Integrations:** [ADBC](/develop/docs/dev-vector-search-integrations-adbc), the main client for search, and the [Python SDK](/develop/docs/dev-vector-search-integrations-python-sdk). The SDK's vector calls are in the VAST DataBase [Python SDK reference](/develop/docs/dev-database-reference-sdk#vector-search). - **Reference:** [SQL](/develop/docs/dev-vector-search-reference-sql), [search session settings](/develop/docs/dev-vector-search-reference-configuration), [limits](/develop/docs/dev-vector-search-reference-limits) and a [cheat sheet](/develop/docs/dev-vector-search-reference-cheat-sheet). - **Operations:** [setup](/develop/docs/dev-vector-search-operations-setup), [security](/develop/docs/dev-vector-search-operations-security), [performance and sizing](/develop/docs/dev-vector-search-operations-performance) and [CI/CD and automation](/develop/docs/dev-vector-search-operations-ci-cd). - **Troubleshooting:** [symptom to fix](/develop/docs/dev-vector-search-troubleshooting-index), [error index](/develop/docs/dev-vector-search-troubleshooting-errors) and [FAQ](/develop/docs/dev-vector-search-troubleshooting-faq). ## Where to go next 1. [Quickstart](/develop/docs/dev-vector-search-quickstart): create an indexed table, insert rows and search them. 2. [The vector index](/develop/docs/dev-vector-search-concepts-index): what you choose when you create one, and how search uses it. 3. [Setup](/develop/docs/dev-vector-search-operations-setup): what to ask your platform team for before you start.