huny.log

기술 포스트 · AI·LLM

Vector DB 비교 — pgvector·Pinecone·Qdrant·Weaviate를 마케터 시선에서

RAG 챗봇에 검색이 들어가면 vector DB 선택이 운영 비용·속도를 결정합니다. pgvector·Pinecone·Qdrant·Weaviate 4개를 비용·운영 부담·확장성·기능 차원에서 비교.

RAG 챗봇이 운영에 들어가는 순간 vector DB 선택이 매월 비용·응답 속도·운영 부담을 결정합니다. 자체 호스팅 PostgreSQL의 pgvector 확장으로 가볍게 시작할지, Pinecone 같은 매니지드 서비스로 운영 부담을 줄일지, Qdrant·Weaviate 같은 오픈소스로 가운데를 갈지. 4개 표준 옵션을 마케터·운영자 시선에서 비교합니다.

마케터가 이 글을 읽어야 하는 이유: vector DB는 코드·인프라 영역이지만, 선택 한 줄이 챗봇의 응답 속도·매월 비용·운영 사고 빈도를 결정합니다. 마케터가 RAG 챗봇 도입을 의사결정할 때 “어떤 DB를 써야 하나”는 코드팀 결정이지만, 비용·SLA·확장 한도 정도는 미리 파악해야 분기 예산 결정에서 헤매지 않습니다.

pgvector·Pinecone·Qdrant·Weaviate 4개 vector DB의 비용·속도·운영 부담·기능 4차원 비교 다이어그램
자체 호스팅이냐 매니지드냐, 작은 규모냐 큰 규모냐 — 두 축이 거의 모든 결정을 정한다.

1. Vector DB가 하는 일

RAG 챗봇은 사용자 질문을 받으면 먼저 관련 문서를 검색합니다. 그 검색이 키워드 매칭이 아니라 의미 기반(임베딩 cosine similarity)이라 일반 DB로는 어렵습니다. vector DB는 임베딩 벡터를 인덱스에 저장하고 “가장 비슷한 N개” 질의를 효율적으로 처리합니다.

작업일반 DBVector DB
검색 단위문자열 매칭의미 유사도
인덱스B-treeHNSW, IVF
쿼리”WHERE name = ‘foo’""Top 5 nearest”
응답 시간수 ms수십 ms (1M+ 벡터)

이 한 가지 능력 — Top-N nearest 검색 — 이 RAG 챗봇의 검색 단계 전체를 떠받칩니다. 검색이 빠르면 답변이 빠르고, 검색이 정확하면 답변이 정확합니다.

2. 4개 옵션 한눈에

2-1. pgvector — PostgreSQL 확장

기존 PostgreSQL에 CREATE EXTENSION vector 한 줄로 vector 검색 기능 추가. 일반 SQL 쿼리에서 임베딩 비교가 가능. 이미 PostgreSQL을 운영 중인 팀에는 가장 자연스러운 출발점.

2-2. Pinecone — 매니지드 서비스

서버리스 vector DB. 인프라 운영 없이 API만 호출하면 됨. 비용은 저장된 벡터 수와 쿼리 수에 따라 청구. 스타트업·운영 부담 적은 팀에 적합.

2-3. Qdrant — 오픈소스 셀프호스팅

Rust로 작성된 고성능 vector DB. 자체 호스팅 또는 Qdrant Cloud 매니지드 둘 다 지원. 메타데이터 필터링이 강력해 마케팅 데이터처럼 카테고리·날짜로 자주 필터하는 자리에 적합.

2-4. Weaviate — 오픈소스 + GraphQL

스키마와 GraphQL 쿼리 인터페이스를 제공하는 vector DB. 임베딩 모델을 DB 안에서 직접 호출할 수도 있어 데이터 파이프라인이 단순해짐. 대규모 운영 사례 많음.

3. 비용 차원 비교

3-1. 100만 벡터 기준 월 비용 추정

옵션호스팅월 비용 (1M 벡터, 100k queries/일)
pgvector자체 호스팅 (RDS db.t3.large)약 $80-120
Pinecone Serverless매니지드약 $70-150
Qdrant Cloud매니지드약 $60-120
Qdrant 자체 호스팅EC2 t3.large약 $60-100
Weaviate Cloud매니지드약 $90-180

수치는 매우 변동이 크지만 100만 벡터 규모에서는 4개 옵션의 비용이 비슷한 자릿수. 결정은 비용보다 운영 부담·확장성·기능에서.

3-2. 1000만 벡터 이상 — 매니지드의 돌파 비용

대형 규모(10M+)에서 매니지드 서비스 비용이 급격히 상승합니다. Pinecone의 dedicated pod는 월 $500+, Weaviate Cloud의 large 플랜도 비슷. 이 규모에서는 Qdrant 자체 호스팅의 단위 비용 우위가 분명해집니다.

3-3. 작은 규모 — 매니지드의 돌파 매력

10만 벡터 이하 작은 RAG는 매니지드의 운영 부담 절감이 매월 $50 차이를 정당화합니다. 인프라 엔지니어 한 명의 한 시간이 그 차이보다 비싸기 때문.

4. 운영 부담 차원

4-1. pgvector

PostgreSQL을 이미 운영 중이면 추가 운영 부담 거의 없음. 백업·모니터링·스케일링이 기존 PostgreSQL 운영에 자연스럽게 들어감. 단, 1M+ 벡터에서 인덱스 관리·메모리 튜닝의 부담이 시작됨.

4-2. Pinecone

운영 부담 거의 0. API 키 발급하고 SDK로 호출만. 인프라·백업·확장 모두 매니지드. 단, 가격 모델이 사용량 기반이라 비용 예측이 어렵고, 회사 정책상 데이터를 외부 SaaS에 못 두는 경우 사용 불가.

4-3. Qdrant 자체 호스팅

Docker로 띄우는 건 쉽지만 production 운영은 또 다른 일. 백업·모니터링·HA 클러스터 구성 등이 인프라 엔지니어의 책임. 자체 호스팅 경험 많은 팀에 적합.

4-4. Weaviate

자체 호스팅 또는 매니지드 둘 다 가능. 자체 호스팅의 운영 부담은 Qdrant와 비슷. 매니지드 Weaviate Cloud가 다른 매니지드 옵션보다 가격이 약간 높지만 GraphQL 쿼리 인터페이스로 분석가가 직접 쿼리하기 좋음.

옵션운영 부담추천 자리
pgvector매우 낮음 (PostgreSQL 운영 시)이미 PostgreSQL 운영 중
Pinecone거의 0운영 인력 없음·매니지드 선호
Qdrant 자체중간인프라 팀 있음·비용 우위
Weaviate중간분석가가 직접 쿼리

5. 검색 정확도와 속도

5-1. ANN 알고리즘

4개 모두 HNSW(Hierarchical Navigable Small World) 인덱스를 지원합니다. 1M 벡터 기준 Top 10 검색에 수십 ms. 알고리즘 차이가 정확도·속도에 영향을 주지만 같은 HNSW면 4개 옵션이 거의 비슷한 수준.

5-2. 메타데이터 필터링

옵션필터 성능비고
pgvector일반 SQL WHERE 가능익숙한 인터페이스
Pinecone메타데이터 필터 지원필터가 많으면 속도 저하
Qdrant매우 강력 (post-filter HNSW)필터 다용도에 적합
WeaviateGraphQL 필터 강력스키마 기반

마케팅 데이터처럼 “카테고리·날짜·캠페인 ID로 필터한 뒤 의미 검색”이 빈번한 자리는 Qdrant가 강합니다. 일반 SQL 친화적이라면 pgvector.

5-3. 한 글에 박는 코드 — pgvector 기본 흐름

이게 글에 박는 유일한 코드입니다.

-- 1. 확장 활성화 (한 번만)
CREATE EXTENSION IF NOT EXISTS vector;
-- 2. 임베딩 컬럼 가진 테이블
CREATE TABLE docs (
id BIGSERIAL PRIMARY KEY,
title TEXT,
category TEXT,
embedding vector(1536) -- OpenAI text-embedding-3-small 기준
);
-- 3. HNSW 인덱스 (1M+ 벡터에 필수)
CREATE INDEX ON docs USING hnsw (embedding vector_cosine_ops);
-- 4. 쿼리 — 카테고리 필터 + 의미 유사도 Top 5
SELECT id, title
FROM docs
WHERE category = 'campaign-q1'
ORDER BY embedding <=> '[0.1, 0.2, ...]'::vector -- 사용자 질문 임베딩
LIMIT 5;

<=>는 cosine distance 연산자. 일반 SQL 쿼리 안에서 의미 검색 + 메타데이터 필터가 한 번에. PostgreSQL을 이미 쓰는 팀에 자연스럽게 들어옵니다.

6. 마케팅 RAG에 적합한 자리

6-1. FAQ 챗봇 (소규모)

수십~수백 개 FAQ 문서. pgvector 또는 Pinecone Serverless. 매니지드의 운영 부담 절감이 가치 있습니다.

6-2. 사내 위키 검색 (중규모)

수천~수만 개 문서. pgvector(이미 운영 중) 또는 Qdrant 자체. 메타데이터 필터(카테고리·날짜)가 자주 들어가면 Qdrant.

6-3. 광고 카피·캠페인 아카이브 (대규모)

수십만~수백만 개 카피·캠페인 메모. 자체 호스팅 Qdrant 또는 Weaviate. 비용 우위와 메타데이터 필터 둘 다 중요.

6-4. 임베딩 운영의 함정

vector DB 선택 자체보다 임베딩 모델·차원·업데이트 주기 결정이 더 큰 영향을 줍니다. 임베딩 운영에서 다룹니다.

7. 마이그레이션의 어려움

vector DB는 “한 번 결정하면 끝”이 아닙니다. 규모가 커지면 마이그레이션이 일어납니다. 가장 흔한 경로:

  1. 시작: pgvector (이미 PostgreSQL 운영 중)
  2. 100만 벡터 도달: Qdrant 자체 또는 매니지드
  3. 1000만+: Qdrant 자체 또는 Weaviate 자체로 통합

마이그레이션 비용은 의외로 큽니다. 임베딩 재계산·인덱스 재구축·인덱싱 파이프라인 변경 등. 출발점에서 1-3년 후를 예상하고 결정하는 게 좋습니다.

8. 4개 옵션 의사결정 체크리스트

새 RAG 시스템 도입 시 다음 5질문에 답하면 어느 옵션이 맞는지 거의 정해집니다.

  1. PostgreSQL을 이미 운영 중인가? (Yes → pgvector 우선 후보)
  2. 회사 정책상 외부 SaaS 사용 가능한가? (No → 매니지드 제외)
  3. 인프라 엔지니어가 자체 호스팅 가능한가? (Yes → Qdrant 자체 후보)
  4. 메타데이터 필터링이 자주 일어나는가? (Yes → Qdrant 강점)
  5. 1년 내 1000만 벡터 도달 예상인가? (Yes → 자체 호스팅 권장)

대부분의 팀이 (1) Yes + (2) Yes + (3) No 조합 → pgvector 또는 Pinecone. 이 둘이 가장 흔한 출발점입니다.

9. 마치며 — vector DB는 운영 인프라의 한 조각

vector DB 선택은 RAG 시스템의 한 조각이고, 시스템 전체의 운영 안정성은 임베딩·청크·검색기·생성기·평가가 함께 만듭니다. 4개 옵션 중 무엇을 골라도 RAG 품질은 비슷한 수준에서 결정되며, 결정의 핵심은 비용·운영 부담·회사 정책 같은 비기술적 요인입니다. 마케터가 vector DB 자체를 깊이 알 필요는 없지만, 매월 비용과 1년 후 마이그레이션 비용 정도는 분기 예산 결정에 반영해야 합니다.

다음 분기에 한 번만 시도해 볼 만한 것은 운영 중인 RAG 시스템의 vector DB 비용을 매월 추적하고, 1000만 벡터 도달 시점을 예상해 마이그레이션 계획을 분기 로드맵에 박아두는 흐름입니다.

다음에 읽을 글

참고

AI·LLM 카테고리의 다른 글

전체 보기 →