Eine Vector Database ist eine Spezial-Datenbank, die nicht klassische Tabellen mit Zeilen und Spalten in den Vordergrund stellt, sondern Embeddings. Embeddings sind hochdimensionale Vektoren (Listen von Zahlen), die die Bedeutung von Text, Bildern oder anderen Daten codieren. Eine Vector Database findet schnell die ähnlichsten Vektoren zu einer Anfrage. Damit ist sie das technische Rückgrat von RAG, semantischer Suche und vielen modernen KI-Apps.
Wie funktioniert eine Vector Database?
Wenn du Inhalte (zum Beispiel Textabschnitte) in der Datenbank speicherst, erzeugst du vorher mit einem Embedding-Modell für jeden einen Vektor. Bei einer Suche wandelst du die Suchanfrage ebenfalls in einen Vektor um. Die Datenbank vergleicht diesen Anfrage-Vektor mit allen gespeicherten Vektoren über eine Distanzmetrik (Cosinus-Ähnlichkeit, Dot-Product, Euclidean Distance) und liefert die nächsten Treffer.
Damit das auch bei Millionen Einträgen schnell bleibt, nutzen Vector Databases Indizes wie HNSW oder IVF, die Approximate Nearest Neighbor Search beschleunigen. Modernere Vector Databases unterstützen ausserdem Filter (zum Beispiel "nur Dokumente von 2025"), Metadaten und Hybrid-Search (Mischung aus Stichwort- und Vektorsuche).
Wofür wird eine Vector Database genutzt?
- RAG-Systeme: Wissensdatenbanken, die KI-Antworten mit eigenen Daten anreichern
- Semantische Suche: Nutzer findet etwas auch ohne exakte Stichwörter
- Empfehlungssysteme: Ähnliche Produkte, Songs oder Inhalte vorschlagen
- Bildähnlichkeit: "Finde Bilder, die so aussehen wie dieses"
- Anomalie-Erkennung: Aussreisser zwischen vielen ähnlichen Datenpunkten finden
- Personalisierung: Nutzerprofile als Vektor speichern und matchen
Bekannte Vector Databases
- Pinecone: Cloud-Service, eine der ersten dedizierten Vector Databases
- Weaviate: Open Source, mit GraphQL-API
- Qdrant: Schnell, Open Source, gut für Self-Hosting
- Milvus: Skalierbare Open-Source-Option
- Supabase pgvector: Postgres-Erweiterung, sehr beliebt im VibeCoding-Stack
- MongoDB Atlas Vector Search: Vektorsuche in der bekannten Document DB
- Redis Vector Search: Vektorsuche zusätzlich zur klassischen Cache-Datenbank
Vector Database und VibeCoding
Im VibeCoding-Stack ist Supabase mit der pgvector-Erweiterung der einfachste Weg, eine Vector Database zu nutzen. Du musst keine zweite Datenbank betreiben, alles läuft in Postgres. Mit Claude Code lässt sich eine Tabelle mit vector(1536) für OpenAI-Embeddings in Minuten anlegen, inklusive Index und passender Such-Funktion.
Für grössere Apps mit Millionen Einträgen oder besonderen Anforderungen lohnt sich der Wechsel zu spezialisierten Diensten wie Pinecone oder Qdrant. Die Wahl hängt von Datenmenge, Latenz-Anforderungen und Budget ab.
Beispiel
Du baust eine VibeCoding-App, in der Nutzer Notizen schreiben und semantisch durchsuchen können. Beim Speichern einer Notiz erzeugst du ein Embedding über die OpenAI-API und legst es in einer Supabase-Tabelle mit pgvector ab. Bei einer Suche ("Wo habe ich was über Stoizismus geschrieben?") erzeugst du ein Embedding der Suche und holst dir per SQL die fünf ähnlichsten Notizen. Ergebnis: Eine Suche, die Bedeutung erkennt, nicht nur Wörter.
Tipps
Achte auf das Embedding-Modell. Du musst alle deine Daten und alle Suchen mit demselben Modell embedden, sonst sind die Vektoren nicht vergleichbar. Plane Migrationen ein: Wenn du das Embedding-Modell wechselst, musst du alles neu erzeugen. Speichere immer die zugehörigen Originaltexte und Metadaten zusätzlich, sodass du Treffer wieder lesbar machen kannst.