A vector database is used to store high-dimensional data that cannot be characterized by traditional DBMS. Although there are not many articles describing existing or introducing new vector database architectures, the approximate nearest neighbor search problem behind vector databases has been studied for a long time, and considerable related algorithmic articles can be found in the literature. This article attempts to comprehensively review relevant algorithms to provide a general understanding of this booming research area. The basis of our framework categorises these studies by the approach of solving ANNS problem, respectively hash-based, tree-based, graph-based and quantization-based approaches. Then we present an overview of existing challenges for vector databases. Lastly, we sketch how vector databases can be combined with large language models and provide new possibilities.
翻译:向量数据库用于存储传统数据库管理系统无法表征的高维数据。尽管描述现有架构或介绍新型向量数据库的文章数量有限,但向量数据库背后的近似最近邻搜索问题已历经长期研究,文献中可找到大量相关算法研究。本文旨在全面综述相关算法,为这一蓬勃发展的研究领域提供总体认知。我们的分类框架以解决ANNS问题的不同方法为基础,分别涵盖基于哈希、基于树、基于图及基于量化四类方法。随后概述了向量数据库当前面临的挑战,最后勾勒了向量数据库与大语言模型结合所开辟的新可能性。