개념
벡터 데이터베이스는 텍스트·이미지 같은 데이터를 임베딩 벡터로 변환해 저장하고, 검색어와 의미가 가장 비슷한 항목을 순위대로 찾아주는 데이터베이스다. 일반 데이터베이스가 조건과 정확히 일치하는 값을 찾는 데 최적화되어 있다면, 벡터 데이터베이스는 값이 정확히 같지 않아도 의미상 가까운 데이터를 찾아내는 데 특화되어 있다.
동작 방식은 대략 세 단계다. 문서를 문단·문장 단위로 나눠 임베딩 벡터로 변환하고, 이를 빠르게 검색할 수 있도록 인덱스로 저장한 뒤, 질문도 같은 방식으로 벡터화해 코사인 유사도 등으로 가장 가까운 벡터를 찾는다. 데이터가 많아질수록 모든 벡터를 하나씩 비교하는 대신 근사 최근접 이웃(ANN) 알고리즘으로 검색 속도를 높이는 경우가 많다.
쓰임새
검색 증강 생성(RAG)을 구현할 때 문서 검색 단계를 담당하는 핵심 인프라로 쓰인다. 사내 지식베이스 검색, 추천 시스템, 중복 문서 탐지처럼 "정확히 같은 값"이 아니라 "의미가 비슷한 값"을 찾아야 하는 작업에 적합하다.
문서 수가 적을 때는 벡터를 직접 비교해도 충분하지만, 수만~수백만 건으로 늘어나면 검색 속도와 정확도를 함께 유지하기 위해 전용 벡터 데이터베이스 도입을 고려할 만하다. 자세한 동작 원리는 벡터 데이터베이스란 무엇인가 가이드에서 다룬다.