【向量存储】向量存储方案一览
视频号
微信公众号
知识星球
RECOM |
ACPT |
PROH |
---|---|---|
Recommended | Accepted | prohibitive |
Software |
Comments |
---|---|
ES | License Issue |
Faiss | For Dev or exploration |
Milvus | For HA and Performance, depends on MinIO now,need k8s for deployment |
Open Search | Combined with full-text serch |
PgVector | Need hybrid serch with SQL |
Qdrant | Easy deploy on Win,Liunx,K8s |
Redis Stack Server | License Issue |
Solr | Combined with full-text serch |
Factor | Sub-Factor | Qdrant | Weaviate | Milvus | Faiss | PgVector | Chroma | Vald | Vespa | Redis | OpenSearch | ES | Solr | Pinecone |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Has Hosting offer | Yes | Yes | No | No | No | Will | Yes | Yes | Yes | Yes | No | Yes | ||
Has Commercial offer | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | |||
Has OSS offer | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | |
OSS License |
Apache | BSD | Apache | MIT | PG | Apache | Apache | Apache |
RSAL/SSPL (Redis Stack Server) |
Apache |
SSPL/ ELv2 |
Apache | ||
Commercial Use | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | |
EA Advise | RECOM | RECOM | RECOM | PROH | RECOM | PROH | RECOM | |||||||
Github | Github | Github | Github | Github | Github | Github | Github | Github | ||||||
Owner | Qdrant | Weaviate | LF AI & Data Foundation | PG | chroma | vdaas | Vespa.ai | Redis | Amazon | Elastic | Apache | Pinecone | ||
Star | 10.6k | 6.2k | 19.1k | 22.1k | 3.5k | 5.7k | 1.2k | 4.4k | ||||||
HA | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
Scalability | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
Backup | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
Performance | ||||||||||||||
Operation | Simple | Complex | Complex | Simple | Simple | Complex | Complex | |||||||
Architecture | Complexity | |||||||||||||
Embeded/Local instance |
Yes . (Memory, Disk) |
No |
Yes (duckdb+parquet) |
No | ||||||||||
Number of components | 2 | 16 | 5 | 2 | 2 | 6 | ||||||||
Number of instances of the component for standalone | 1 Process | 1+N | 3 Pods | 1 | 4 Pods | 1 (docker) | ||||||||
Number of instances of the component for cluster | 2 Processes | 2+N | 28 Pods | 2 | 6+ | |||||||||
Development | Server language | Rust | Golang | Golang | C++ | C++ | Python | Golang | Java | |||||
Client language | Python | Python | Python | Python | Python | Python | Python | |||||||
Java | Java | Java | Java | |||||||||||
Node.js | Node.js | Node.js | Node.js | |||||||||||
Go | Golang | Golang | Go | Go | ||||||||||
JavaScript | JavaScript | |||||||||||||
TypeScript | ||||||||||||||
Rust | Rust | |||||||||||||
Protocal | REST | |||||||||||||
gRPC | ||||||||||||||
JDBC | ||||||||||||||
Integration | LangChain | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||
LLamaIndex | Yes | Yes | ||||||||||||
Installation & Deploymnet | K8s | Yes | Yes | No | No | Yes | Yes | |||||||
Docker Compose | Yes | Yes | No | Yes (ALPHA STATUS) | Yes | Yes | ||||||||
Windows | Yes | Yes | Yes | No | No | Yes (need Docker) | ||||||||
Linux | Yes | Yes | Yes | No | No | Yes | ||||||||
Backend-Store | RocksDB |
prometheus, AWS S3/ Azure Blog/ GCP/ MinIo grafana/ keycloak |
Etcd, MinIo, pulsar/Kafka, gorocksdb/ rocksdb (standalone) |
PG | ClickHouse | |||||||||
Full-Text Index | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
Hybrid search | Yes | Yes | Yes | Yes | ||||||||||
Filtering | Pre-filtering | Yes? | Yes | Yes? | Yes | |||||||||
Post-filtering | Yes? | Yes | Yes? | Yes | ||||||||||
Cachable Filters |
Yes | |||||||||||||
Vector Index Algorithm (ANN) |
FLAT |
Yes | Yes | |||||||||||
FlatL2 | Yes | |||||||||||||
FlatIP | Yes | |||||||||||||
HNSW | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |||||||
bm25 | Yes | |||||||||||||
HNSWFlat | Yes | |||||||||||||
IVF_FLAT |
Yes | Yes | Yes | |||||||||||
IVF_SQ8 |
Yes | Yes | ||||||||||||
IVF_PQ |
Yes | Yes | ||||||||||||
PQ | Yes | Yes | ||||||||||||
IVF+SQ | Yes | |||||||||||||
IVFPQR | Yes | |||||||||||||
ANNOY |
Yes | |||||||||||||
DISKANN |
Yes | |||||||||||||
LSH(Locality-sensitive hashing) | Yes | Yes | ||||||||||||
BIN_FLAT |
Yes | Yes | ||||||||||||
BIN_IVF_FLAT |
Yes | Yes | ||||||||||||
BHNSW | Yes | |||||||||||||
BHash | Yes | |||||||||||||
Vector Query Algorithm
|
KNN | Yes | Yes | Yes | Yes | |||||||||
Script Scoring |
Yes | |||||||||||||
Painless Scripting |
Yes | |||||||||||||
K-means |
Yes | |||||||||||||
Linear regression |
Yes | |||||||||||||
Random Cut Forest (RCF) |
Yes | |||||||||||||
RCF Summarize |
Yes | |||||||||||||
Localization |
Yes | |||||||||||||
Logistic regression |
Yes | |||||||||||||
Metrics correlation |
Yes | |||||||||||||
KNN distance metrics
|
Euclidean distance (L2) |
Yes | Yes | Yes | Yes | Y | ||||||||
Inner product (IP) |
Yes | Yes | Yes | |||||||||||
Jaccard |
Yes | |||||||||||||
Tanimoto |
Yes | |||||||||||||
Hamming |
Yes | Yes | yes | |||||||||||
geodegrees | Yes | |||||||||||||
Superstructure |
Yes | |||||||||||||
Substructure |
Yes | |||||||||||||
cosine | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
dot | Yes | Yes | Yes | Yes | ||||||||||
l2-squared | Yes | |||||||||||||
manhattan | Yes | |||||||||||||
Projecttion Algorithm |
t-sne | Yes | ||||||||||||
UMAP | Yes | |||||||||||||
Random Projection |
Yes | |||||||||||||
Clustering Algorithm |
HDBSCAN | Yes | ||||||||||||
PCA | Yes | |||||||||||||
Deduplication Algorithm |
Yes | |||||||||||||
Multimodal Algorithm |
CLIP | Yes | ||||||||||||
Fine-tuning manifold Algorithm |
Yes | |||||||||||||
Expanded vector search Algorithm |
MMR | Yes | ||||||||||||
Polytope | Yes | |||||||||||||
Memo |
Complexity Architecture, depends MinIo |
Need RedisJSON | ||||||||||||
Introduction | Link | Link | ||||||||||||
Archi Doc | Archi | |||||||||||||
Algorithm | Algo | Algo | Algo | Algo | Algo | Algo | ||||||||
Benchmark | Link | Link |
- 182 次浏览