Milvus
Milvus entstand 2019 bei Zilliz als erste speziell entwickelte, cloud-native Vektordatenbank für massiven Maßstab von Grund auf. Während andere Lösungen aus existierenden Datenbanken evolvierten, wurde Milvus spezifisch für Vektor-Workloads architektiert: Unterstützung von 10+ Index-Typen (HNSW, IVF, DiskANN), Billionen-skalige Datensätze, Hybrid-Suche kombinierend dichte und spärliche Vektoren, echtes cloud-natives Deployment auf Kubernetes. 2020 an LF AI & Data Foundation gespendet, erreichte Milvus 2022 Produktionsreife und betreibt jetzt KI-Anwendungen bei eBay (Produktempfehlungen auf 1,3B+ Artikel), Walmart (visuelle Suche), NVIDIA (GPU-Optimierungsforschung) und Tausenden Unternehmen. Die Architektur: Trennung von Storage und Compute ermöglicht unabhängige Skalierung, MinIO/S3 für Objektspeicherung, Pulsar/Kafka für Message Queue, etcd für Metadaten—jede Komponente skaliert unabhängig. Unterstützung mehrerer Index-Typen ermöglicht optimale Tradeoff-Auswahl: HNSW für Geschwindigkeit (unter 10ms Abfragen), IVF_FLAT für Genauigkeit, DiskANN für Kosten (10x größere Datensätze auf gleichem Speicher via Disk-Offloading), SCANN für Googles Algorithmus. Schlüsselinnovationen: Konsistenzgarantien (konfigurierbare Konsistenzlevel von eventual bis strong), Time Travel (historische Zustände abfragen), Multi-Tenancy mit Ressourcenisolierung, GPU-Beschleunigung für Index-Building und Queries. Performance: 10.000+ Abfragen/Sekunde auf Milliarden-Vektor-Datensätzen, unter 20ms p99-Latenz, horizontale Skalierung auf 100+ Knoten, Billionen-Vektor-Kapazität über Cluster. Bis Oktober 2025 fügt Milvus 2.4 Sparse-Vector-Support (BM25, SPLADE), verbesserte Filtering-Performance (5-10x schneller) und erhöhte Ressourceneffizienz (30% weniger Speicher) hinzu. Deployment-Optionen: Standalone-Modus (Single Node), Cluster-Modus (verteilt), Milvus Lite (Embedded Database), Zilliz Cloud (Fully Managed). 21medien deployed Milvus für Kunden mit Enterprise-Grade-Vektorsuche-Anforderungen: Wir übernehmen Cluster-Architektur, Index-Optimierung, Monitoring und Operational Excellence—ermöglichen Organisationen produktive KI-Systeme, die von Millionen zu Milliarden Vektoren mit vorhersagbarer Performance und Kosten skalieren.

Überblick
Milvus löst Enterprise-Vektorsuche-Herausforderungen, die einfachere Lösungen nicht adressieren können: Billionen-skalige Datensätze, komplexe Filteranforderungen, Multi-Tenancy mit Ressourcenisolierung, regulatorische Compliance und hohe Verfügbarkeit mit Disaster Recovery. Die cloud-native Architektur trennt Belange: Compute Nodes (Query Nodes, Data Nodes, Index Nodes) skalieren unabhängig von Storage (MinIO, S3, Azure Blob). Message Queue (Pulsar, Kafka) bietet zuverlässige Kommunikation und ermöglicht Time Travel—Datenbank-Zustand zu jedem historischen Zeitstempel abfragen für Debugging oder Compliance. Metadaten-Service (etcd) verwaltet Cluster-Status mit automatischem Failover. Diese Architektur ermöglicht: (1) Unabhängige Skalierung—Query Nodes für Read-Throughput hinzufügen ohne Storage zu berühren, (2) Kostenoptimierung—günstigen Objektspeicher für kalte Daten nutzen, teures SSD für heiße Daten, (3) Fehlertoleranz—jede Komponente kann ausfallen ohne Datenverlust, (4) Multi-Cloud—Deployment auf AWS, GCP, Azure oder Hybrid mit konsistenter Erfahrung. Index-Vielfalt ist Milvus' Stärke: HNSW (Hierarchical Navigable Small World) für Low-Latency-Abfragen unter 10ms, IVF (Inverted File)-Varianten für Genauigkeits-Kosten-Tradeoffs, DiskANN für speicherbeschränkte Szenarien (speichert Vektoren auf Disk, lädt relevante Teile während Query), GPU-beschleunigte Indizes (CAGRA, RAFT) für maximalen Durchsatz. Nutzer wählen Index pro Collection basierend auf Anforderungen. Konsistenzmodell bietet konfigurierbare Garantien: Strong (linearizable Reads, höchste Latenz), Bounded (Staleness innerhalb Zeitschwelle), Session (Read-Your-Writes), Eventual (niedrigste Latenz). Diese Flexibilität ermöglicht angemessenen Tradeoff pro Use Case—Strong für Finanztransaktionen, Eventual für Produktempfehlungen.
Enterprise-Features unterscheiden Milvus von leichteren Alternativen. Multi-Tenancy: Isolierte Collections mit dedizierten Ressourcen erstellen (CPU, Memory, Disk-Quotas), verhindert Noisy Neighbors. Role-Based Access Control (RBAC) integriert mit Enterprise-Auth-Systemen. Hybrid-Suche kombiniert mehrere Vektorfelder und skalare Filter in einer Abfrage: 'Finde Produkte ähnlich zu Image-Embedding UND ähnlich zu Text-Embedding WO Kategorie=Elektronik UND Preis<500 UND auf_Lager=true'. Attribut-Indizierung beschleunigt Filter—Bitmap-Indizes für niedrige Kardinalität, invertierte Indizes für Text, Range-Indizes für Numerics. Time Travel ermöglicht Auditing und Debugging: Abfragen wie Empfehlungen letzte Woche aussahen, Embedding-Drift über Zeit tracken, Rollback zu bekannt gutem Zustand. GPU-Beschleunigung beschleunigt Index-Building 10-100x (IVF-Index auf 100M Vektoren: 30 Minuten auf GPU vs. 20+ Stunden auf CPU) und Query-Processing 5-10x für bestimmte Workloads. Dynamisches Schema erlaubt Felder ohne Downtime hinzuzufügen, essentiell für evolvierende ML-Systeme. Backup und Disaster Recovery: Point-in-Time-Snapshots, Cross-Region-Replikation, automatisiertes Failover. Real-World-Skalierung: eBay betreibt Milvus-Cluster mit 1,3B+ Produktvektoren über 50+ Knoten, serviert 50K+ Abfragen/Sekunde mit p99-Latenz unter 30ms für 'Visuelle Suche' und 'Ähnliche Produkte'-Features. Shopify nutzt Milvus für Händler-Produktempfehlungen, verarbeitet 100M+ Vektoren mit komplexer Filterung (Geografie, Preisstufen, Lagerbestand). 21medien implementiert Milvus für Enterprise-Kunden mit anspruchsvollen Anforderungen: Wir haben Multi-Region-Cluster mit 5B+ Vektoren architektiert, 99,99% Uptime erreicht, p95-Latenz unter 15ms mit komplexer Filterung, 10K+ gleichzeitige Nutzer unterstützt—alles bei Einhaltung von Datenschutzanforderungen (GDPR, CCPA) und Bereitstellung detaillierter Audit-Logs für regulatorisches Reporting.
Hauptmerkmale
- Cloud-native Architektur: Kubernetes-natives Deployment mit unabhängiger Skalierung von Compute und Storage, unterstützt AWS, GCP, Azure, Hybrid
- Billionen-Skalierung: Bewährte Deployments mit Milliarden Vektoren, horizontale Skalierung auf 100+ Knoten, DiskANN ermöglicht 10x größere Datensätze pro Node
- Mehrere Index-Typen: HNSW, IVF-Varianten, DiskANN, GPU-beschleunigte Indizes (CAGRA, RAFT), optimaler Tradeoff für jeden Use Case
- Hybrid-Suche: Mehrere Vektorfelder kombinieren (Bild + Text-Embeddings), spärliche Vektoren (BM25, SPLADE) und Attributfilter in einer Abfrage
- Konfigurierbare Konsistenz: Strong, Bounded, Session, Eventual Konsistenzlevel für angemessenen Latenz-Korrektheit-Tradeoff
- Time Travel: Historische Datenbank-Zustände zu jedem Zeitstempel abfragen, Embedding-Evolution tracken, Debugging, Compliance-Auditing
- Multi-Tenancy: Ressourcenisolierung mit CPU/Memory-Quotas pro Collection, RBAC, separate Namespaces für Abteilungen oder Kunden
- Hohe Verfügbarkeit: Automatisches Failover, Cross-Region-Replikation, Backup und Restore, Zero-Downtime-Upgrades
- Erweiterte Filterung: Bitmap-, invertierte und Range-Indizes auf Attributen für 10-100x schnellere gefilterte Abfragen, komplexe Boolean-Expressions
- GPU-Beschleunigung: 10-100x schnelleres Index-Building, 5-10x schnellere Queries für bestimmte Workloads, automatisches GPU-Scheduling über Cluster
Technische Architektur
Milvus-Architektur besteht aus vier Schichten. Access Layer: SDK-Clients (Python, Java, Go, Node.js) verbinden via gRPC, Load Balancer verteilt Requests über Proxy Nodes, Proxies validieren Requests und routen zu entsprechenden Komponenten. Coordinator Layer: Root Coordinator verwaltet Cluster-Status, Data Coordinator handled Datenpersistenz, Query Coordinator orchestriert Query-Ausführung, Index Coordinator verwaltet Index-Building. Worker Layer: Query Nodes führen Queries auf indizierten Daten aus, Data Nodes handeln Daten-Ingestion und Persistenz, Index Nodes bauen Indizes offline. Storage Layer: Meta Store (etcd) hält Collection-Schemas und Cluster-Status, Message Queue (Pulsar/Kafka) bietet zuverlässige Kommunikation und ermöglicht Time Travel, Objektspeicher (MinIO, S3, Azure Blob) speichert Vektoren und Indizes, Local Cache (in-memory) beschleunigt Zugriff auf heiße Daten. Datenfluss: (1) Insert—Vektoren in Log Broker geschrieben, Data Nodes batchen und persistieren zu Objektspeicher, (2) Index—Index Nodes lesen von Storage, bauen Indizes (HNSW/IVF/DiskANN), schreiben zurück zu Storage, (3) Query—Query Nodes laden relevante Segmente und Indizes von Storage/Cache, führen Search aus, geben Ergebnisse zurück. Konsistenz-Implementierung: Schreiboperationen mit Zeitstempeln versehen, Leseoperationen spezifizieren Konsistenzlevel, System stellt sicher Reads sehen alle Writes bis spezifizierten Zeitstempel. Skalierung: horizontale Skalierung durch Hinzufügen von Nodes zu jeder Schicht, Partitionierung verteilt Collections über Nodes basierend auf Partition Key, Replikas bieten Read-Skalierbarkeit und Fehlertoleranz. Index-Auswahl-Beispiel: HNSW für latenz-kritische Anwendungen (Empfehlungssysteme, Echtzeit-Suche), IVF_FLAT für genauigkeitskritische (Forschung, Forensik), DiskANN für kostensensitive großskalige (Archiv-Suche, kalte Daten-Queries), GPU-Indizes für durchsatzkritische Batch-Verarbeitung. 21medien architektiert Milvus-Cluster für optimale Kosten-Performance: Auswahl angemessener Index-Typen pro Collection, Konfiguration von Partition-Strategien (zeitbasiert für Logs, geografiebasiert für Multi-Region), Tuning der Ressourcen-Allokation (Query Nodes erhalten mehr CPU, Index Nodes mehr Memory), Implementierung von Caching-Strategien (heiße Collections im Speicher, warme auf SSD, kalte in Objektspeicher), Monitoring und Auto-Scaling basierend auf Query-Patterns.
Häufige Anwendungsfälle
- E-Commerce-Suche: Visuelle Produktsuche, 'Ähnliche Artikel'-Empfehlungen, multi-modale Suche (Bild + Text) im Milliarden-Produkt-Maßstab
- Content-Empfehlungen: Personalisierte Content-Vorschläge für Streaming-Plattformen, News-Sites, Social Media basierend auf User-Embeddings
- Betrugs-Erkennung: Betrügerische Transaktionen, Accounts, Verhaltensweisen durch Ähnlichkeit zu bekannten Betrugsmustern in Echtzeit erkennen
- Arzneimittelforschung: Molekulare Datenbanken nach Verbindungen ähnlich zu Zielstruktur durchsuchen, pharmazeutische Forschung beschleunigen
- Sicherheit & Überwachung: Gesichtserkennung, Objekterkennung, Anomalie-Erkennung in Video-Feeds mit Millionen Frames
- Kundensupport: Semantische Suche über Support-Tickets, Wissensbasen, Chat-Logs für sofortige Lösungsfindung
- Dokumentenmanagement: Enterprise-Dokumentensuche, Vertragsanalyse, Compliance-Prüfung über Millionen Dokumente
- Autonome Fahrzeuge: Echtzeit-Ähnlichkeitssuche für Perzeptionssysteme zur Identifikation von Objekten, Szenarien basierend auf Sensor-Embeddings
- Empfehlungssysteme: Collaborative Filtering im massiven Maßstab, Hybrid-Empfehlungen kombinierend mehrere Signale (User, Item, Context)
- Forschung & Analytics: Wissenschaftliche Paper-Suche, Patent-Prior-Art, wissenschaftliche Literaturanalyse mit Zitations- und Content-Embeddings
Integration mit 21medien Services
21medien bietet umfassende Milvus-Deployment- und Management-Services. Phase 1 (Architektur-Design): Wir bewerten Ihre Anforderungen (Skalierung, Latenz, Durchsatz, Compliance), designen Cluster-Topologie (Node-Counts, Instance-Typen, Storage-Strategie), wählen Index-Typen pro Collection, planen Kapazität und Wachstum, schätzen Kosten. Architektur-Entscheidungen: Standalone für <10M Vektoren, Cluster für >10M, Multi-Region für globale Anwendungen, Hybrid Cloud für Datenhoheit. Phase 2 (Deployment): Wir deployen Milvus auf Kubernetes mit Helm Charts oder Operators, konfigurieren Infrastruktur (Node Pools, Storage Classes, Networking), integrieren mit Monitoring (Prometheus, Grafana, Alerts), richten Authentication und RBAC ein, implementieren Backup/Restore-Prozeduren. Produktions-Härtung: Ressourcenlimits, Pod Disruption Budgets, Netzwerk-Policies, Verschlüsselung im Ruhezustand und Transit. Phase 3 (Datenmigration): Wir bauen ETL-Pipelines zum Import von Vektoren aus existierenden Systemen (Elasticsearch, PostgreSQL, andere Vektordatenbanken), implementieren parallele Ingestion für schnelle Migration (Millionen Vektoren pro Stunde), validieren Datenintegrität, erstellen für Query-Patterns optimierte Indizes. Zero-Downtime-Migration für Produktionssysteme mit Blue-Green-Deployment. Phase 4 (Optimierung): Wir tunen Index-Parameter (HNSW m/efConstruction, IVF nlist/nprobe), optimieren Partition-Strategien, konfigurieren Caching-Schichten, implementieren Query-Optimierung (Attribut-Indizierung, Filter Pushdown), benchmarken Performance gegen SLAs. Load Testing validiert Cluster verarbeitet Peak-Traffic. Phase 5 (Betrieb): Laufender Support umfasst Performance-Monitoring, Kapazitätsplanung, Scaling-Operationen (vertikal und horizontal), Index-Optimierung bei Datenentwicklung, Incident Response, Kostenoptimierung. Automatisiertes Scaling basierend auf Metriken. Beispiel: Für Online-Händler deployten wir Milvus mit 500M Produktvektoren über 20-Knoten-Cluster für visuelle Suche und Empfehlungen: erreichten 12.000 Abfragen/Sekunde, p95-Latenz 18ms mit komplexen Filtern (Kategorie, Preis, Verfügbarkeit, Marke), 99,99% Uptime, Kosten $8.000/Monat Infrastruktur (versus $50.000+/Monat bei Managed-Alternative)—ermöglichten visuelles Such-Feature, das Conversion-Rate um 18% und durchschnittlichen Bestellwert um 12% steigerte, generierte $2M+ monatlichen zusätzlichen Umsatz.
Code-Beispiele
Milvus-Client installieren: pip install pymilvus — Basis-Setup: from pymilvus import connections, Collection, FieldSchema, CollectionSchema, DataType; connections.connect(host='localhost', port='19530'); # Schema definieren: fields = [FieldSchema(name='id', dtype=DataType.INT64, is_primary=True, auto_id=True), FieldSchema(name='embedding', dtype=DataType.FLOAT_VECTOR, dim=768), FieldSchema(name='title', dtype=DataType.VARCHAR, max_length=200), FieldSchema(name='price', dtype=DataType.FLOAT)]; schema = CollectionSchema(fields, description='Produkt-Embeddings'); collection = Collection(name='products', schema=schema) — Vektoren einfügen: import numpy as np; vectors = np.random.rand(1000, 768).tolist(); titles = [f'Produkt {i}' for i in range(1000)]; prices = np.random.uniform(10, 1000, 1000).tolist(); collection.insert([vectors, titles, prices]) — Index erstellen: index_params = {'metric_type': 'COSINE', 'index_type': 'HNSW', 'params': {'M': 16, 'efConstruction': 200}}; collection.create_index(field_name='embedding', index_params=index_params); collection.load() — Suche mit Filterung: query_vector = np.random.rand(768).tolist(); search_params = {'metric_type': 'COSINE', 'params': {'ef': 100}}; results = collection.search(data=[query_vector], anns_field='embedding', param=search_params, limit=10, expr='price < 500', output_fields=['title', 'price']); for result in results[0]: print(f'Titel: {result.entity.get("title")}, Preis: {result.entity.get("price")}, Distanz: {result.distance}') — Hybrid-Suche mit mehreren Vektoren: # Benötigt Milvus 2.4+: results = collection.hybrid_search(reqs=[search_request_1, search_request_2], rerank=WeightedRanker(0.6, 0.4), limit=10) — 21medien bietet Produktions-Deployment-Templates, Monitoring-Dashboards und Operational Runbooks für Milvus.
Best Practices
- Angemessenen Index-Typ wählen: HNSW für Latenz (<10ms), IVF für ausgeglichen, DiskANN für große Datensätze mit Speicherbeschränkungen
- Partitionierungsstrategie implementieren: Partition nach Zeit, Geografie oder Tenant für schnellere Queries und einfacheres Datenmanagement
- Attribut-Indizierung für Filter nutzen: Indizes auf häufig gefilterten Feldern erstellen (Kategorie, Datum, Status) für 10-100x Speedup
- Konsistenzlevel tunen: Eventual für Empfehlungen/Suche, Bounded für Analytics, Strong nur für finanzielle/kritische Anwendungen
- Ressourcen-Quotas konfigurieren: CPU/Memory-Limits pro Collection in Multi-Tenant-Deployments setzen zur Verhinderung von Ressourcenkonflikten
- Caching strategisch aktivieren: Heiße Collections im Speicher cachen, Cache-Größe basierend auf Query-Patterns und Working Set Size konfigurieren
- Segment-Health monitoren: Segment-Größen tracken, Compaction-Status, Fragmentierung—Compaction während Low-Traffic-Perioden ausführen
- Backup-Prozeduren implementieren: Regelmäßige Snapshots zu S3/GCS, Restore-Prozeduren testen, Cross-Region-Replikas für DR pflegen
- Bulk Insert für große Daten nutzen: Batch-Insertions in Gruppen von 10K-100K Vektoren für optimalen Durchsatz, Single-Row-Inserts vermeiden
- Vor Produktion Load-Testing: Performance mit realistischen Query-Patterns validieren, p95/p99-Latenz unter Last messen, Fehlerszenarien testen
Performance-Vergleich
Milvus-Performance skaliert auf Enterprise-Anforderungen. Abfragelatenz: 10-20ms p95 für Milliarden-Vektor-Datensätze mit HNSW-Index, 30-50ms mit komplexer Filterung. versus Qdrant: vergleichbare Latenz für ähnliche Index-Typen, Milvus besser für Billionen-Skalierung (bewährt bei eBays 1B+ Vektoren), Qdrant einfacher für kleinere Deployments. versus Weaviate: Milvus 2-3x schneller für großskalige Deployments, bessere Multi-Tenancy, mehr Index-Optionen. versus Pinecone: Milvus matched Latenz bei vollständiger Kontrolle (Datenhoheit, Compliance), 5-10x niedrigere Kosten für Self-Hosted. Durchsatz: Einzelner Milvus-Cluster verarbeitet 10.000-50.000 Abfragen/Sekunde abhängig von Hardware und Index-Typ, skaliert horizontal durch Hinzufügen von Query Nodes. Index-Building: GPU-Beschleunigung bietet 10-100x Speedup versus CPU—IVF-Index auf 100M Vektoren baut in 30 Minuten auf GPU (vs. 20+ Stunden CPU). Speichereffizienz: DiskANN ermöglicht 10x größere Datensätze pro Node durch Speicherung von Vektoren auf Disk, Laden nur relevanter Teile während Query. Kosten: Betrieb von 1B Vektoren auf Milvus-Cluster kostet $15.000-25.000/Monat (20-30 Node-Cluster auf Cloud), äquivalentes Pinecone-Deployment kostet $100.000+/Monat (80% Einsparung). Multi-Tenancy: Milvus unterstützt Tausende Collections pro Cluster mit Ressourcenisolierung, Alternativen benötigen oft separate Cluster pro Tenant (10x Kostensteigerung). Konsistenz: Konfigurierbare Konsistenz einzigartig unter Vektordatenbanken, ermöglicht angemessene Latenz-Tradeoffs—Eventual Consistency erreicht 30-40% niedrigere Latenz als Strong. GPU-Utilization: Milvus nutzt GPUs effizient sowohl für Indexierung als auch Queries, Alternativen nur CPU oder limitierte GPU-Unterstützung. 21medien hilft Kunden bei Migration von Managed Services zu Milvus für Kosteneinsparungen und Kontrolle: typische Migration von Pinecone zu self-hosted Milvus spart 70-85% bei gleichzeitiger Performance-Verbesserung um 20-30% durch Hardware-Optimierung und Index-Tuning, erreicht ROI innerhalb 3-6 Monate für Deployments über 100M Vektoren.
Offizielle Ressourcen
https://milvus.ioVerwandte Technologien
Qdrant
Rust-basierte Vektordatenbank mit einfacherem Deployment, besser für <100M Vektor-Use-Cases
Weaviate
Open-Source-Vektordatenbank mit GraphQL-API, vergleichbare Features aber weniger skalierbar
Pinecone
Managed Vektordatenbank mit höheren Kosten, Alternative für Teams, die Zero-Ops-Lösung wünschen
LlamaIndex
Daten-Framework für LLM-Anwendungen mit nativer Milvus-Integration für Vektorspeicherung