Exqutor: Extended Query Optimizer for Vector-augmented Analytical Queries
Hyunjoon Kim, Chaerim Lim, Hyeonjun An, Rathijit Sen, Kwanghyun Park
TL;DR
Exqutor tackles the critical bottleneck of cardinality estimation in vector-augmented analytical queries by introducing ECQO for vector-indexed scenarios and adaptive sampling for index-less cases. Integrated into pgvector, VBASE, and DuckDB, Exqutor yields substantial speedups by informing the optimizer with precise vector predicate selectivity and reusing planning-time index results. The framework is validated across TPC-H, TPC-DS, and diverse embedding datasets, demonstrating broad applicability to multi-relational VAQs and complex workloads typical of Retrieval-Augmented Generation. Overall, Exqutor advances practical query optimization for hybrid relational-vector workloads, reducing planning and execution costs in modern data pipelines.
Abstract
Vector similarity search is becoming increasingly important for data science pipelines, particularly in Retrieval-Augmented Generation (RAG), where it enhances large language model inference by enabling efficient retrieval of relevant external knowledge. As RAG expands with table-augmented generation to incorporate structured data, workloads integrating table and vector search are becoming more prevalent. However, efficiently executing such queries remains challenging due to inaccurate cardinality estimation for vector search components, leading to suboptimal query plans. In this paper, we propose Exqutor, an extended query optimizer for vector-augmented analytical queries. Exqutor is a pluggable cardinality estimation framework designed to address this issue, leveraging exact cardinality query optimization techniques to enhance estimation accuracy when vector indexes (e.g., HNSW, IVF) are available. In scenarios lacking these indexes, we employ a sampling-based approach with adaptive sampling size adjustment, dynamically tuning the sample size to balance estimation accuracy and sampling overhead. This allows Exqutor to efficiently approximate vector search cardinalities while minimizing computational costs. We integrate our framework into pgvector, VBASE, and DuckDB, demonstrating performance improvements of up to four orders of magnitude on vector-augmented analytical queries.
