A Comparative Analysis of Efficient Similarity Search in Qdrant as a Vector Database and FAISS as a Vector Search Library
Diese Studie demonstriert experimentell, dass unter spezifischen Single-Core-Bedingungen mit einem Datensatz von 20.000 Vektoren FAISS, konfiguriert mit IndexFlatL2, den HNSW-basierten Local Mode von Qdrant signifikant übertrifft, indem es eine etwa 24,9-mal geringere Latenz und einen höheren Durchsatz erreicht, was die Leistungs-Trade-offs zwischen spezialisierten Vektorsuch-Bibliotheken und datenbankorientierten Systemen hervorhebt.
Originalarbeit lizenziert unter CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
In der digitalen Welt lernen Computer zunehmend, Bedeutung nicht durch das Lesen von Wörtern zu verstehen, sondern indem sie diese in lange Listen von Zahlen übersetzen. Stellen Sie sich einen riesigen, unsichtbaren Raum vor, in dem jede Idee, jedes Bild oder jeder Text als ein einzelner Punkt dargestellt wird. In diesem Raum repräsentieren Punkte, die nah beieinander liegen, ähnliche Dinge, während Punkte, die weit voneinander entfernt sind, sehr unterschiedliche Dinge repräsentieren. Diese Methode ermöglicht es Maschinen, verwandte Informationen schnell zu finden, was alles antreibt – von Suchmaschinen, die Ihre Absicht verstehen, bis hin zu Empfehlungssystemen, die den richtigen Film vorschlagen. Doch wenn diese Sammlungen von Punkten in die Millionen oder Milliarden wachsen, wird das Finden der am nächsten liegenden Übereinstimmung zu einer massiven rechnerischen Herausforderung. Wenn ein Computer eine neue Frage mit jedem einzelnen gespeicherten Element einzeln vergleichen müsste, wäre der Prozess für den praktischen Einsatz zu langsam. Um dies zu lösen, haben Forscher zwei Hauptarten von Werkzeugen entwickelt: spezialisierte Bibliotheken, die rein auf Geschwindigkeit bei der Suche nach diesen Übereinstimmungen ausgelegt sind, und voll funktionsfähige Datenbanken, die die Daten dauerhaft speichern und zusätzliche Funktionen wie Filterung und Verwaltung bieten.
Eine aktuelle Studie von Dukhik Hovsepyan an der Europäischen Universität Armenien setzte sich zum Ziel, den Leistungsunterschied zwischen diesen beiden Ansätzen unter realen Bedingungen zu messen. Der Forscher verglich eine spezialisierte Suchbibliothek namens FAISS mit einer Vektordatenbank namens Qdrant. Um einen fairen Test zu gewährleisten, nutzte das Experiment eine kontrollierte Umgebung, in der beide Systeme gebeten wurden, exakt dasselbe Problem zu lösen: das Finden der zehn ähnlichsten Elemente zu einer gegebenen Abfrage innerhalb einer Sammlung von zwanzigtausend Elementen, wobei jedes Element durch einhundertachtundzwanzig verschiedene Merkmale beschrieben wurde. Die Tests wurden auf einem einzelnen Computerprozessorkern durchgeführt, um die reine Geschwindigkeit der Suchmechanismen zu isolieren, ohne die Hilfe mehrerer zusammenarbeitender Prozessoren.
Die Ergebnisse zeigten eine eklatante Lücke in der Rohgeschwindigkeit zwischen den beiden Konfigurationen. Die spezialisierte Bibliothek, FAISS, war so konfiguriert, dass sie eine exakte Suche durchführte, was bedeutet, dass sie den Abstand zu jedem einzelnen Element berechnete, um eine möglichst genaue Antwort zu garantieren. In diesem Aufbau fand sie die korrekten Übereinstimmungen in durchschnittlich weniger als vier Zehntel Millisekunden pro Abfrage. Dies ermöglichte es ihr, mehr als zweitausendfünfhundert Abfragen pro Sekunde zu verarbeiten. Im Gegensatz dazu lief das Datenbank-System, Qdrant, in einem lokalen Modus, der Daten auf der Festplatte speichert und eine andere, schnellere, aber approximative Methode zur Navigation durch die Daten verwendet. Unter diesen spezifischen Bedingungen benötigte Qdrant durchschnittlich fast zehn Millisekunden, um auf jede Abfrage zu antworten, was einen Durchsatz von etwas mehr als einhundert Abfragen pro Sekunde ergab. Die spezialisierte Bibliothek war etwa fünfundzwanzigmal schneller in Bezug darauf, wie viele Fragen sie in einer Sekunde beantworten konnte, und fünfundzwanzigmal schneller darin, wie lange sie für die Beantwortung einer einzelnen Frage benötigte.
Die Studie betont jedoch, dass dieser Unterschied nicht bedeutet, dass eine Technologie universell der anderen überlegen ist. Das Experiment war darauf ausgelegt, spezifische Setups zu vergleichen, nicht das gesamte Potenzial der Software. Die Bibliothek wurde als reines In-Memory-Suchwerkzeug getestet, während die Datenbank mit ihren Speicher- und Verwaltungsfunktionen getestet wurde, obwohl diese zusätzlichen Funktionen nicht der Schwerpunkt des Geschwindigkeitstests waren. Der Datenbank-Ansatz bietet erhebliche Vorteile, die der Geschwindigkeitstest nicht gemessen hat, wie die Fähigkeit, Daten nach dem Ausschalten des Computers dauerhaft auf einer Festplatte zu sichern, Ergebnisse basierend auf anderen Informationen wie Daten oder Kategorien zu filtern und große Datensammlungen als ein kohärentes System zu verwalten. Die Bibliothek hingegen ist eine spezialisierte Engine, die für eine einzige Aufgabe gebaut wurde: die nächsten Nachbarn so schnell wie möglich zu finden, oft auf Kosten der Notwendigkeit, alle Daten im temporären Speicher des Computers zu halten.
Der Forscher kommt zu dem Schluss, dass die beobachtete Leistungsdifferenz ein Merkmal der in der Untersuchung verwendeten spezifischen Konfigurationen ist und keine grundlegende Regel darstellt, die in allen Situationen gilt. Wenn der Datensatz größer gewesen wäre, der Computer mehr Prozessorkerne gehabt hätte oder die Datenbank als separater Server statt als lokales Werkzeug betrieben worden wäre, hätten sich die Zahlen wahrscheinlich geändert. Die Studie dient als klarer Referenzwert, der zeigt, dass eine spezialisierte Bibliothek für eine einfache, direkte Suchaufgabe auf einem einzelnen Prozessor dramatisch schneller sein kann als ein Datenbank-System, das dieselbe Aufgabe bewältigt. Dennoch bietet die Datenbank für Anwendungen, die eine dauerhafte Speicherung von Daten, die Filterung nach komplexen Regeln oder die Verwaltung massiver Datensammlungen erfordern, ein breiteres Set an Werkzeugen, das eine spezialisierte Bibliothek nicht bereitstellt. Die Wahl zwischen ihnen hängt davon ab, ob die Priorität auf der absolut schnellstmöglichen Antwort auf eine einfache Frage liegt oder auf der Fähigkeit, Daten innerhalb eines größeren, komplexeren Systems zu verwalten und abzurufen.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.