So funktioniert die Vektorsuche in einer lokalen MongoDB
MongoDB Version 8.2 bietet erstmals eine Public Preview für Vektor- und Volltextsuche womit der Betrieb separater Vektordatenbanken überflüssig werden könnte.
(Bild: KI / iX)
- Walter Peter Hoffmann
Wer bisher semantische Suche oder Retrieval Augmented Generation (RAG) mit MongoDB umsetzen wollte, kam an MongoDB Atlas nicht vorbei. Nur die Cloud-Plattform bot eine Vektorsuche und die leistungsstarke Atlas Search Engine. Für Unternehmen mit strengen Datenschutzanforderungen oder dem Wunsch nach vollständiger Kontrolle über die eigene Infrastruktur war das ein Ausschlusskriterium. Sie mussten auf Alternativen wie PostgreSQL mit pgvector, OpenSearch oder spezialisierte Vektordatenbanken wie Milvus, Qdrant oder Pinecone ausweichen.
MongoDB 8.2 legt nun den Grundstein für eine Veränderung. Die neue Version enthält erstmals die Möglichkeit, Vektor- und Volltextsuche auch in selbst gehosteten MongoDB-Instanzen zu nutzen. Der Schlüssel dazu ist mongot (MongoDB Community Search), ein separater Suchserver, der über das Framework gRPC mit dem MongoDB-Server kommuniziert. mongot vereint zwei Technologien: Für die Volltextsuche kommt Apache Lucene zum Einsatz – die gleiche Engine, die auch OpenSearch antreibt. Die Vektorsuche nutzt den HNSW-Algorithmus für die Ähnlichkeitssuche in hochdimensionalen Vektorräumen.
- MongoDB 8.2 bringt Vektorsuche und Volltextsuche erstmals in selbst gehostete Umgebungen.​
- Die Funktion läuft über den neuen Suchserver mongot und erfordert ein Replica Set; die Operationen laufen über eine MongoDB Aggregation Pipeline.
- Die Vektorsuche nutzt den HNSW-Algorithmus für die Ähnlichkeitssuche in hochdimensionalen Vektorräumen.
- Die Volltextsuche nutzt Apache Lucene.
- Die Funktion befindet sich im Public-Preview-Status und ist noch nicht fĂĽr den Produktionseinsatz geeignet, bietet aber fĂĽr Entwicklung und Prototyping bereits deutlichen Mehrwert.
Wichtiger Hinweis: Die mongot-Funktionen (Vektor- und Volltextsuche) befinden sich für selbst gehostete Umgebungen aktuell im Status „Public Preview“ und sind noch nicht für den Produktionseinsatz gedacht. MongoDB empfiehlt daher, diese Funktionen ausschließlich in Entwicklungs- und Testumgebungen einzusetzen. Wie das geht, zeigt dieser Artikel. Der vollständige Code findet sich auf GitHub.
Das war die Leseprobe unseres heise-Plus-Artikels "So funktioniert die Vektorsuche in einer lokalen MongoDB ". Mit einem heise-Plus-Abo können Sie den ganzen Artikel lesen.