Multi-Vector Search Using IVF Indexes
In many real-world use cases, multi-vector similarity searches must be performed on large datasets, requiring efficient indexing to improve performance. The Oracle AI Database offers support for accelerated similarity searches using IVF vector indexes, which can significantly reduce latency and resource utilization compared to scanning entire tables.
Why Use IVF Indexes for Multi-Vector Search?
IVF indexes partition the vector space into a configurable number of centroids, allowing each query to focus only on the most relevant portions of the data. By searching within these relevant partitions, IVF indexes can achieve fast response times for multi-vector search workloads that would otherwise take significantly longer with a full scan.
- Fast approximate similarity search: IVF indexing improves vector search efficiency by organizing vectors into clusters and storing them in centroid-aligned partitions. At query time, the database first identifies the nearest centroids to the query vector, and then searches only the corresponding centroid partitions, rather than scanning the entire base table. This approach significantly reduces the number of rows read, the number of vector distance computations, and the amount of sorting work required to return the top results.
- Integration with SQL: The IVF index works seamlessly with SQL syntax, supporting approximate searches, including multi-level partitioned row limiting.
- Supported features: IVF multi-vector search supports included columns, multiple partition columns, and expression-based indexing to match real-world schemas and query patterns. It is also compatible with Exadata offload for improved performance.
Parent topic: Perform Multi-Vector Similarity Search