데이터

벡터 DB

Vector Database

임베딩 벡터를 저장해 두고 의미가 가장 비슷한 항목을 빠르게 찾아 주는 데이터베이스로, 값이 정확히 일치하는 것을 찾는 일반 데이터베이스와 달리 뜻이 가까운 것을 찾는다. AI가 사내 문서를 참고해 답하는 RAG에서 검색 엔진으로 쓴다.

구분일반 데이터베이스벡터 DB
찾는 방식값이 정확히 일치하는 것의미가 비슷한 것
질문 예시주문번호가 12345인 건이 질문과 뜻이 가까운 문서

RAG에서는 이렇게 쓴다

먼저 사내 문서나 매뉴얼을 잘게 쪼개 임베딩으로 바꾼 뒤 벡터 DB에 넣어 둔다. 사용자가 질문하면 질문도 벡터로 바꿔 벡터 DB에 보내고, 의미가 가까운 문서 조각 몇 개를 바로 받아온다. 이 조각을 질문과 함께 AI에 넣으면 문서를 근거로 한 답이 나온다.

작게 시작해서 커지면 옮긴다

처음부터 무거운 인프라를 세울 필요는 없다. 검색이 서비스의 핵심이 되고 데이터가 커졌을 때 옮겨 가는 순서가 자연스럽다.

상황선택이유
프로토타입Chroma노트북에 바로 깔아 쓴다
이미 Postgres 사용pgvector 확장권한·사용자 조건을 SQL로 걸면서 함께 검색
수천만 개 이상, 빠른 응답 필요Pinecone, Qdrant, Milvus, Weaviate관리형 서비스·전용 엔진

벡터가 수백만 개 수준까지는 pgvector로 충분한 경우가 많다.

정확한 단어 검색은 하이브리드로

벡터 검색은 의미가 비슷한 걸 폭넓게 찾아오지만, 제품 코드나 오류 번호처럼 글자가 그대로 일치해야 하는 검색에서는 놓치기 쉽다. 그래서 키워드 검색과 벡터 검색을 함께 돌려 결과를 합치는 하이브리드 검색이 사실상 기본이 됐다. Weaviate처럼 두 방식을 한 질문 안에서 섞어 주는 제품도 있다.

다 보지 않고 가까운 후보만 본다

수백만 개의 벡터를 하나하나 비교하면 너무 느리다. 그래서 벡터 DB는 벡터를 미리 정리해 두고, 가까운 후보만 살피는 근사 최근접 이웃(ANN) 검색을 쓴다. 정답을 아주 가끔 놓치는 대신 속도가 크게 빨라진다.

방식정리하는 법
HNSW가까운 벡터끼리 이은 여러 층의 지도를 만들고, 위층에서 방향을 잡은 뒤 아래층으로 내려가며 좁힌다
IVF벡터를 여러 구역으로 나눠 두고, 질문과 가장 가까운 구역 몇 개만 뒤진다

문서 검색부터 AI 기억 장치까지

가장 흔한 쓰임은 RAG 챗봇의 검색 단계다. 그 밖에도 '이것과 비슷한 것'을 찾아야 하는 곳이면 어디든 쓰인다.

어디서어떻게 쓰나
사내 문서 검색·챗봇매뉴얼·위키를 조각내 넣어 두고, 질문과 뜻이 가까운 조각을 찾아 AI 답변의 근거로 붙인다
코드 검색코드베이스를 임베딩해 두고 "로그인 처리하는 곳"처럼 말로 관련 파일을 찾는다
추천·유사 항목 검색상품·이미지·글을 벡터로 넣어 두고, 지금 보는 것과 비슷한 항목을 골라 보여준다
AI 비서의 장기 기억지난 대화를 저장해 두고, 새 질문과 관련된 기억만 꺼내 프롬프트에 넣는다
#벡터검색#저장소
참고 자료
관련 영상
← AI Wiki에서 더 보기
updated at 2026-10-20