Zurück zum Glossar

Begriff

pgvector

pgvector ist eine quelloffene PostgreSQL-Erweiterung für Vektor-Suche — bringt Embedding-Spalten, Distanzfunktionen und ANN-Indizes (HNSW, IVFFlat) direkt in die bestehende Postgres-Datenbank.

pgvector — ausführlicher erklärt

Statt eine separate spezialisierte Vektor-Datenbank zu betreiben, ergänzt pgvector PostgreSQL um den Datentyp vector, Distanzoperatoren (<-> euklidisch, <#> dot product, <=> Kosinus) und Indextypen HNSW (schnell, wenig Tuning) und IVFFlat (klein, langsamer beim Lookup). Damit lassen sich Embeddings in derselben Tabelle wie Metadaten ablegen — Joins, Filter über WHERE, Transaktionen und das gewohnte Postgres-Ökosystem inklusive.

Beispiel / Praxisbezug

Ein RAG-Setup für eine bestehende SaaS-App: Dokumente liegen schon in Postgres, pgvector wird per CREATE EXTENSION vector aktiviert, eine Spalte embedding vector(1536) ergänzt, und ein HNSW-Index gebaut. Retrieval läuft über SELECT … ORDER BY embedding <=> $1 LIMIT 10. Hosted bei Supabase, Neon, AWS RDS, Azure und vielen weiteren Anbietern verfügbar — kein zusätzlicher Service nötig.

Abgrenzung zu ähnlichen Begriffen

Spezialisierte Vektor-DBs wie Pinecone oder Qdrant skalieren bei Milliarden Vektoren und liefern oft niedrigere p99-Latenzen, sind aber zusätzliche Infrastruktur. pgvector ist die pragmatische Wahl, wenn Postgres ohnehin im Stack ist und die Vektormengen im Bereich Millionen liegen. Mit pg_trgm oder Postgres-Volltext lässt sich direkt in derselben DB Hybrid-Search bauen.

Entdecke mehr