Évaluation des performances de Milvus 2023
Chez Zilliz, les développeurs nous demandent souvent : "Comment Milvus se compare-t-il aux versions précédentes pour les charges de travail d'embedding ?" Il y a deux raisons principales à cela. Premièrement, les développeurs qui démarrent un nouveau projet sont désireux d'utiliser les dernières versions logicielles pour accéder aux dernières fonctionnalités, mais peuvent hésiter en raison de préoccupations liées à une dégradation des performances. Deuxièmement, les utilisateurs actuels peuvent également avoir des préoccupations concernant les performances et ne procéderont à une mise à niveau que si les nouvelles capacités sont attrayantes.
Pour apaiser ces préoccupations, nous souhaitons partager les derniers benchmarks réalisés sur Milvus v2.2.3 vs. Milvus 2.2.0 et Milvus v2.0.0, comparant les latences de recherche et le débit sur quatre jeux de données bien connus (DEPP, GIST, GloVe et SIFT). Les benchmarks ont montré que Milvus v2.2.3 surpasse v2.2.0 et v2.0.0, améliorant considérablement les vitesses de recherche et d'indexation. Plus précisément, dans Milvus 2.2.3, nous avons obtenu une réduction de 2,5x de la latence de recherche par rapport à la version initiale Milvus 2.0.0. De plus, nos tests dans un environnement identique ont montré une augmentation de 4,5x du QPS avec Milvus 2.2.3 par rapport à 2.0.0.
Nous avons estimé que ces données seraient précieuses pour les ingénieurs évaluant l'adéquation de la dernière version de Milvus à leurs cas d'utilisation de recherche de similarité ; téléchargez le livre blanc technique "Milvus Performance Evaluation 2023" pour lire la Méthodologie et les Résultats d'évaluation.
Notre objectif principal était de créer une comparaison cohérente et à jour qui reflète les derniers développements de Milvus. Nous relancerons périodiquement ces benchmarks et d'autres benchmarks de bases de données vectorielles et mettrons à jour notre livre blanc technique détaillé avec nos conclusions. Tout le code de ces benchmarks est disponible sur Github. N'hésitez pas à ouvrir des issues ou des pull requests sur ce référentiel si vous avez des questions, des commentaires ou des suggestions.
Versions testées
- Milvus v2.2.3 | date de publication : 10 février 2023
- Milvus v2.2.2 | date de publication : 18 novembre 2022
- Milvus v2.0.0 | date de publication : 25 janvier 2022
Nous avons identifié les caractéristiques les plus couramment évaluées pour travailler avec des embeddings afin de constituer une suite de benchmarks représentative. Nous avons examiné les performances selon :
- Latence des requêtes – mesurée en millisecondes
- QOS – requêtes par seconde
- Latence vs. Débit
- Scalabilité à l'échelle du milliard
- Scalabilité sur plusieurs réplicas
À propos du jeu de données
De plus, six jeux de données sont utilisés pour les benchmarks :
- Quatre (4) jeux de données provenant de ann-benchmarks ont été utilisés pour évaluer les performances de recherche des différentes versions de Milvus.
- Deux (2) jeux de données à l'échelle du milliard (BIGANN et LAION-5B de LAION) ont été utilisés pour évaluer la scalabilité de Milvus 2.2.3.
Résultats
Latence de recherche ANN
Avec Milvus 2.2.3, nous avons obtenu une réduction de 2,5x de la latence de recherche par rapport à la version initiale Milvus 2.0.0.
Latence de recherche de Milvus 2.0.0, 2.2.0 et 2.2.3.png
Débit de recherche ANN
Nous avons constaté une augmentation de 4,5x du QPS avec Milvus 2.2.3 par rapport à 2.0.0.
QPS de Milvus 2.0.0, 2.2.9 et 2.2.3.png
Échelle du milliard
Un cluster Milvus 2.2.3 mis à l'échelle horizontalement a montré peu de dégradation des performances, tant en latence de recherche qu'en QPS.
Latence et QPS de différentes tailles de cluster | Milvus.png
Multi-réplicat (Évolutivité linéaire)
Milvus 2.2.3 a montré une évolutivité linéaire lors de l’utilisation de plusieurs réplicas.
Latence et QPS lorsque le nombre de réplicas double | Milvus.png
Résumé
Nous encourageons vivement les développeurs à exécuter ces benchmarks afin de vérifier indépendamment les résultats dans l’environnement et avec les jeux de données de leur choix.
Et ensuite ?
- Téléchargez le document technique détaillé : "Évaluation des performances de Milvus 2023."
- Inscrivez-vous et démarrez avec Zilliz Cloud.
- Rejoignez-nous sur la communauté Slack !
Continuer à lire

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.

OpenAI o1: What Developers Need to Know
In this article, we will talk about the o1 series from a developer's perspective, exploring how these models can be implemented for sophisticated use cases.

Vector Databases vs. Hierarchical Databases
Use a vector database for AI-powered similarity search; use a hierarchical database for organizing data in parent-child relationships with efficient top-down access patterns.



