Eine Engineering-Perspektive: Warum ist Milvus eine überzeugende Option für Ihre Apps?
Vektordatenbanken sind für modernes Datenmanagement unerlässlich und beim Aufbau von Anwendungen weit verbreitet, die von Empfehlungssystemen und Chatbots bis hin zu künstlicher allgemeiner Intelligenz (AGI) und retrieval augmented generation (RAG) reichen. In dieser dynamischen Landschaft ist Milvus der Pionier, und seine jüngste Veröffentlichung, Milvus 2.3, führt zahlreiche spannende neue Funktionen und Verbesserungen ein.
In diesem Blog werden wir Milvus 2.3 aus technischer Perspektive betrachten und Einblicke dazu geben, warum Milvus 2.3 sowohl für Neueinsteiger als auch für bestehende Nutzer aus drei entscheidenden Blickwinkeln eine ausgezeichnete Wahl ist: Datenbankauswahl, Entwicklungserfahrung und Systemzuverlässigkeit.
Abwägung von Leistung, Kosten und Skalierbarkeit
Bei der Auswahl einer Vektordatenbank berücksichtigen die meisten Nutzer drei Hauptfaktoren: Leistung, Kosten und Skalierbarkeit. Die vorherige Milvus-2.x-Serie priorisierte Skalierbarkeit, wodurch sie an verschiedene Umgebungen anpassbar war und Milliarden von Vektoren speichern und durchsuchen konnte. Milvus 2.3 geht bei der Optimierung seiner Skalierung noch einen Schritt weiter, indem es nahtlose Übergänge von Millionen zu Milliarden von Vektoren ermöglicht und dabei seine cloud-native Trennung von Speicher und Rechenleistung nutzt.
Milvus 2.3 bietet Nutzern außerdem mehrere Bereitstellungsoptionen für Leistung und Kosten, darunter GPU-, CPU-Docker-Optionen (ARM64 und x86) sowie Kubernetes-Optionen (Milvus Operator und Helm).
Nutzer, die Leistung priorisieren, können Milvus 2.3 mit dem GPU-Docker auswählen, der eine 3- bis 10-mal schnellere Leistung als die CPU-Option bietet.
Kostenbewusste Nutzer können die ARM64-Option von Milvus wählen, die budgetfreundlicher ist und gleichzeitig eine angemessene Leistung beibehält.
Milvus 2.3 unterstützt außerdem MMap, einen UNIX-Systemaufruf, der Dateien und andere Objekte in den Speicher abbildet und dadurch die Datenkapazität einzelner Maschinen bei geringeren Kosten erheblich erhöht. Basierend auf unseren Testergebnissen kann Milvus mit Unterstützung von MMap seine Datenkapazität verdoppeln und gleichzeitig den Leistungsabfall auf innerhalb von 20 % begrenzen. Wir werden diese Funktion im kommenden Milvus 2.3.1 weiter optimieren, mit dem Ziel, die Datenkapazität auf bis zu das 20-Fache der aktuellen Größe zu erweitern.
Entwickler durch Einfachheit stärken
Moderne Anwendungen erfordern mehr als primäre Vektorsuchfunktionen wie Einfügen, Löschen und Abrufen. Beispielsweise benötigen verschiedene Anwendungen unterschiedliche Abfragen, etwa Top-k-Vektorabfragen, distanzbasierte Abfragen und nach Attributen gefilterte Abfragen. Darüber hinaus können diese Apps andere Methoden zur Berechnung der Vektordistanz erfordern, darunter euklidische Distanz (L2), Inner Product (IP) und Kosinusähnlichkeit (COSINE).
Milvus 2.3 hat seine API verbessert, um all diesen vielfältigen Anforderungen gerecht zu werden und die Entwicklung unkomplizierter zu machen. Beispielsweise vereinfacht die neue Upsert-Funktion das Datenmanagement, indem sie Dateneinfügung und Aktualisierungen in einer einzigen Codezeile kombiniert. Der ScaNN-Index bietet leistungsstarke Indexierung und ermöglicht eine schnellere Abfragegeschwindigkeit als ältere Versionen.
Milvus unterstützt außerdem die Datenintegration mit anderen Produkten, indem es Migrationstools und Funktionen zur inkrementellen Datenerfassung bereitstellt, um das Datenmanagement zu optimieren.
Stabilität und Verfügbarkeit im Sekundenbereich sicherstellen
Milvus hat sich dank seiner kontinuierlichen Optimierung als zuverlässig und für Produktionsumgebungen verfügbar erwiesen.
Die 2.1.x-Serie führte Speicherreplikation ein und verbesserte damit die Systemstabilität erheblich. Die 2.2.x-Serie fügte Funktionen zur Fehlerisolation für Ressourcengruppen hinzu und erhöhte so die Systemresilienz. Aufbauend auf den Erfolgen früherer Versionen führt Milvus 2.3 den Look Aside Load Balancer ein, der eine noch schnellere Erkennung von Node-Ereignissen ermöglicht und Failover sowie Ressourcenerweiterung im Sekundenbereich sicherstellt.
Milvus 2.3 umfasst außerdem ein besseres Speichermanagement, verbesserte Rolling Upgrades und Unterstützung für eine größere Anzahl von Tabellen in einem einzelnen Cluster, was zu weiteren Verbesserungen der allgemeinen Systemstabilität führt.
Fazit
In der sich rasant entwickelnden Landschaft der Vektordatenbanken sticht Milvus 2.3 als Leuchtturm der Exzellenz hervor. Es bietet alles, was Nutzer in einer modernen Vektordatenbank benötigen: hohe Leistung, Skalierbarkeit, Verfügbarkeit, Stabilität und Kosteneffizienz.
Mit dem fortschreitenden technologischen Fortschritt entwickelt sich auch Milvus weiter. Wir werden Milvus weiterhin unermüdlich optimieren und in kommenden Versionen modernste Funktionen einführen, wie etwa Ausdruckslöschung, nahtlose Azure-Cloud-Bereitstellung, erweiterte Array-Unterstützung, Optimierung von Standard-/Nullwerten und dynamisches Hinzufügen von Spalten. Bleiben Sie dran.
Diese Reise treten wir nicht allein an. Wir laden die gesamte Community ein, Milvus aktiv zu erkunden, Ihre Erkenntnisse zu teilen und zur fortlaufenden Weiterentwicklung dieser bemerkenswerten Technologie beizutragen.
Weiterlesen

How to Improve Retrieval Quality for Japanese Text with Sudachi, Milvus/Zilliz, and AWS Bedrock
Learn how Sudachi normalization and Milvus/Zilliz hybrid search improve Japanese RAG accuracy with BM25 + vector fusion, AWS Bedrock embeddings, and practical code examples.

What is the K-Nearest Neighbors (KNN) Algorithm in Machine Learning?
KNN is a supervised machine learning technique and algorithm for classification and regression. This post is the ultimate guide to KNN.

DeepSeek-VL2: Mixture-of-Experts Vision-Language Models for Advanced Multimodal Understanding
Explore DeepSeek-VL2, the open-source MoE vision-language model. Discover its architecture, efficient training pipeline, and top-tier performance.



