AI

Vector DB 선택하기

Cori 2024. 7. 22. 17:17

Vector DB는 써야되긴 하겠으나, 어떤 벡터 DB가 괜찮은지 몰라 몇 가지 벡터 데이터베이스에 대한 특징을 정리해보았다. 이 중 적합한 것을 찾아 사용해보자

* Self-Host: 데이터베이스가 타사 클라우드 서비스에 의존하지 않고 사용자의 자체 인프라에 호스팅될 수 있는지 여부 지정

** Latency: 요청을 시작하고 응답을 받기까지의 지연 시간(밀리초)

*** Disk index support: ChatGPT 데이터베이스가 디스크에 인덱스를 저장하는 것을 지원하는지 여부. 메모리에 맞지 않는 대규모 데이터셋을 처리하는 데 필수적

 

Case 1. Open-Source and hosted cloud

- Weviate, Milvus, and Chroma를 고려하는 것이 좋다.

 

Case 2. Performance

- 성능을 우선시한다면, 초당 쿼리 수에 대한 순수 성능 측면에서 Milvus가 선두를 차지하고, 그 뒤를 바짝 쫒는 Weviate와 Qdrant를 고려하는 것이 좋다. 지연 시간 측면에서 Pinecone과 Milvus 모두 인상적인 2ms 이하의 결과를 제공하며, Pinecone에 여러 개의 포드를 추가하면 훨씬 더 높은 QPS를 달성할 수 있다.

 

Case 3. Community Strength - 커뮤니티 크기를 우선시한다면, Milvus는 가장 큰 커뮤니티를 자랑하며, 그 뒤를 바짝 쫒는Weviate와 Elasticsearch를 고려하는 것이 좋다.

 

Case 4. Scalability, advanced features and security - 확장성 및 고급 기능과 보안을 우선시한다면, 많은 기업 애플리케이션에 중요한 기능인 역할 기반 액세스 제어를 제공하는 Pinecone, Milvus, ElasticSearch를 고려하는 것이 좋고 다양한 인덱스 유형이 필요한 경우 11가지 다른 유형의 인덱스를 제공하는 Milvus를 사용하는 것이 좋다. 확장성 측면에서, Milvus와 Chroma는 동적 세그먼트 배치를 제공하여 지속적으로 변화하는 데이터세트에 적합하다. 

 

Case 5. Price

-  스타트업이나 예산이 제한된 프로젝트의 경우, 50k 벡터에 대한 Qdrant의 약 $9 가격은 매우 경쟁력 있다. 반면, 높은 성능을 요구하는 대규모 프로젝트의 경우 Pinecone과 Milvus는 경쟁력 있는 가격 체계를 제공한다.

 

VectorDB Comparison

 

Vector DB Comparison

Vector DB Comparison is a free and open source tool from VectorHub to compare vector databases.

superlinked.com