Implementation and experimental evaluation of mint for workload-aware approximate nearest neighbor index tuning in multi-vector databases
Abstract
Approximate nearest neighbor (ANN) search is an integral part of contemporary vector databases; however, the performance of this algorithm highly depends on the specifics of data, recall requirements, storage capabilities, and query workload. All these factors complicate ANN even further in multi-vector databases, where every record has several vectors and queries may utilize arbitrary combinations of vector fields. This paper provides an independent implementation and experimental analysis of MINT (Multi-Vector Search Index Tuning) framework, originally introduced in [9], for workload-aware ANN index tuning in multi-vector databases. The implementation follows the core workflow of MINT that includes workload-induced candidate index generation, cost and recall estimation of generated indexes through sampling, extended-k query planning, and configuration search under constraints of required recall and storage capabilities. The system was implemented in Python with usage of NumPy, hnswlib, scikit-learn, SciPy, and h5py, constructing HNSW indexes only after selecting a proper configuration. The experiments were conducted for a multi-vector database, composed of six columns based on GloVe, SIFT, Deep1M, and Music100 collections. The present study is focused on reproducibility at the implementation level, analysis of the tuning process and its assumptions, and comparison of workload aware configurations with baselines. The quantitative results obtained for the benchmark pipeline need to be considered separately from those of the optimization pipeline since the two execution pipelines have different experimental setups that include sampling fraction, recall threshold, top-k value, workload setup, and other restrictions; hence, benchmarking results cannot be viewed as the outputs of the optimization pipeline.