Sofortantwort
Vektordatenbank einfach erklärt
Eine Datenbank für die Speicherung hochdimensionaler Vektoren.
- Kurz gesagt
- Speichert Embedding-Vektoren und ermöglicht schnelle Ähnlichkeitssuchen
- Typischer Einsatz
- RAG-Systeme, Semantische Suche, Empfehlungssysteme
- Wichtig zu wissen
- Nutzt spezielle Indexstrukturen (HNSW, IVF) für effiziente Suche in Millionen von Vektoren
Vektordatenbank im Überblick
Eine Vektordatenbank ist eine spezielle Datenbank, die für die Speicherung und Suche von Embeddings optimiert ist. Während eine normale Datenbank nach exakten Werten sucht (“Finde alle Kunden mit PLZ 10115”), sucht eine Vektordatenbank nach Ähnlichkeit (“Finde die 10 Dokumente, die dieser Frage am ähnlichsten sind”).
Warum braucht man eine Vektordatenbank?
Wenn du ein RAG-System baust, musst du:
- Tausende Dokumente als Embeddings speichern
- Bei jeder Nutzeranfrage die relevantesten Dokumente in Millisekunden finden
- Das Ganze skalierbar und zuverlässig betreiben
Eine Vektordatenbank löst genau diese Aufgaben.
Der typische Workflow:
- Indexierung: Dokumente werden in Chunks aufgeteilt, embeddet und gespeichert
- Suche: Eine Anfrage wird embeddet und die ähnlichsten Vektoren werden gefunden
- Ergebnis: Die zugehörigen Dokument-Chunks werden zurückgegeben
Vergleich der Optionen:
Lösung Vektoren Latenz Aufwand Ideal für In-Memory (NumPy) < 10K Schnell Minimal Prototypen pgvector < 1M Gut Gering Bestehende PostgreSQL-Infrastruktur ChromaDB < 1M Gut Gering Lokale Entwicklung Qdrant/Weaviate < 100M Sehr gut Mittel Produktion Pinecone < 1B Sehr gut Gering (Managed) Enterprise
Technisch betrachtet
Indexstrukturen
Die Herausforderung: Exakte Nearest-Neighbor-Suche in hochdimensionalen Räumen ist extrem langsam (O(n) pro Query). Vektordatenbanken nutzen Approximate Nearest Neighbor (ANN) Algorithmen:
HNSW (Hierarchical Navigable Small World):
- Graph-basierter Index mit mehreren Ebenen
- Sehr schnelle Suche mit hoher Genauigkeit (Recall > 95%)
- Standard in den meisten Vektordatenbanken
- Trade-off: Hoher Speicherbedarf (Index im RAM)
IVF (Inverted File Index):
- Teilt den Vektorraum in Cluster (Voronoi-Zellen)
- Suche nur in den nächsten Clustern statt im gesamten Raum
- Weniger Speicher als HNSW, aber etwas langsamer
- Gut kombinierbar mit Product Quantization (IVF-PQ)
Product Quantization (PQ):
- Komprimiert Vektoren durch Aufteilung in Subvektoren
- Drastische Speicherreduktion (z.B. 1536D Float32 → 48 Bytes)
- Trade-off: Leichter Genauigkeitsverlust
Filterung und Hybrid Search
Moderne Vektordatenbanken unterstützen:
Metadata-Filterung:
- Vektoren mit Metadaten versehen (Kategorie, Datum, Autor)
- Filter vor oder nach der Vektorsuche anwenden
- Pre-Filtering: Genauer, aber langsamer
- Post-Filtering: Schneller, aber kann zu wenigen Ergebnissen führen
Hybrid Search:
- Kombination aus Vektorsuche (semantisch) und Keyword-Suche (BM25)
- Reciprocal Rank Fusion (RRF) für die Kombination der Ergebnisse
- Beste Ergebnisse für die meisten Retrieval-Aufgaben
Skalierung und Performance
Sharding:
- Verteilung der Vektoren auf mehrere Nodes
- Horizontale Skalierung für Milliarden von Vektoren
Replikation:
- Kopien der Daten für Hochverfügbarkeit
- Read-Replicas für höheren Durchsatz
Quantisierung:
- Float32 → Float16: 2x weniger Speicher, minimaler Qualitätsverlust
- Float32 → Int8: 4x weniger Speicher
- Binary Quantization: 32x weniger Speicher, für Reranking geeignet
Best Practices
- Embedding-Modell und Datenbank zusammen evaluieren: Die Qualität hängt von beiden ab
- Chunk-Größe testen: 256-1024 Tokens, abhängig vom Use Case
- Overlap verwenden: 10-20% Überlappung zwischen Chunks
- Metadaten mitführen: Quelle, Datum, Kategorie für spätere Filterung
- Monitoring: Latenz, Recall und Relevanz kontinuierlich messen
- Backup-Strategie: Regelmäßige Snapshots der Vektordaten
Schritt für Schritt
So sucht eine Vektordatenbank
Die Datenbank speichert nicht nur Inhalte, sondern vor allem deren Embeddings. Bei einer Anfrage sucht sie nach den Vektoren mit der ähnlichsten Bedeutung.
Dokumente indexieren
Vorbereitung
Dokumente werden in sinnvolle Abschnitte geteilt. Für jeden Abschnitt werden Embedding und Metadaten gespeichert.
Chunk + Embedding + Quelle + MetadatenAnfrage vektorisieren
Query
Die Suchanfrage wird mit demselben Embedding-Modell in einen Vektor umgewandelt.
Frage → Anfrage-VektorÄhnliche Nachbarn finden
ANN-Index
Indexstrukturen wie HNSW oder IVF durchsuchen nicht jeden Vektor vollständig, sondern finden sehr schnell gute Kandidaten.
Anfrage-Vektor → Top-k NachbarnTreffer filtern und ausliefern
Retrieval
Metadaten und Zugriffsrechte begrenzen die Treffer. Die passenden Inhalte gehen an Suche, Empfehlungssystem oder LLM.
Top-k + Filter → nutzbare Treffer
Konkretes Beispiel
Dokumente für eine RAG-Antwort finden
Ein Team fragt: „Welche Kündigungsfrist gilt für unseren Enterprise-Vertrag?“
Ohne Vektorsuche
Ein System müsste nach festgelegten Stichwörtern suchen oder viele Dokumente vollständig durchsuchen. Unterschiedliche Formulierungen erschweren den Treffer.
Mit Vektorsuche
Die Anfrage findet semantisch nahe Vertragsabschnitte. Ein Berechtigungsfilter lässt nur Dokumente zu, auf die das Team zugreifen darf.
Die Vektordatenbank ist kein Ersatz für die Quelldatenbank. Sie ist ein spezialisierter Suchindex, der Bedeutung schnell auffindbar macht.
Einordnung
Vorteile und Grenzen
Das spricht dafür
- Sie ermöglicht schnelle semantische Suche über sehr viele Dokumentabschnitte.
- Metadaten-Filter lassen sich mit Ähnlichkeitssuche kombinieren.
- Sie bildet eine skalierbare Retrieval-Schicht für RAG und Empfehlungssysteme.
- ANN-Indizes tauschen geringe Genauigkeit gegen sehr niedrige Antwortzeiten.
Das solltest du beachten
- Eine Vektordatenbank ersetzt keine relationale Quelle der Wahrheit für Geschäftsdaten.
- Index, Embedding-Modell und Chunking müssen gemeinsam bewertet und betrieben werden.
- Mehr Vektoren, hohe Dimensionen und Replikation erhöhen Speicher- und Betriebskosten.
- Berechtigungen dürfen nicht erst nach der Antwort geprüft werden, sondern müssen die Suche selbst begrenzen.
Vertiefung · für FortgeschritteneTechnische Architektur
Die Vektordatenbank sitzt zwischen Wissensbestand und Anwendung: Sie macht Inhalte auffindbar, bleibt aber nicht deren alleinige Quelle.
Ähnlichkeitssuche
Entscheidungshilfe
Vektordatenbank im Vergleich
| SQL-Datenbank | Vektordatenbank | |
|---|---|---|
| Datenmodell | Tabellen mit Zeilen und Spalten, festes Schema | Hochdimensionale Vektoren (Embeddings) + Metadaten |
| Abfrage-Typ | Exakte Abfragen: Filter, Joins, Aggregationen | Ähnlichkeitssuche: 'Was ist semantisch am nächsten?' |
| Ergebnis-Charakter | Deterministisch und exakt | Approximativ, nach Ähnlichkeit gerankt |
| Index-Struktur | B-Trees, Hash-Indizes | ANN-Indizes (z. B. HNSW, IVF) |
| Transaktionen / Konsistenz | ACID-Transaktionen, referenzielle Integrität | Meist eventual consistency, keine Joins |