Une perspective d’ingénierie : pourquoi Milvus est-il une option convaincante pour vos applications ?
Les bases de données vectorielles sont essentielles à la gestion moderne des données et sont couramment utilisées pour créer des applications allant des systèmes de recommandation et des chatbots à l’intelligence artificielle générale (AGI) et à la génération augmentée par récupération (RAG). Dans ce paysage dynamique, Milvus est le pionnier, et sa récente version, Milvus 2.3, introduit de nombreuses nouvelles fonctionnalités et améliorations passionnantes.
Dans ce blog, nous explorerons Milvus 2.3 d’un point de vue ingénierie et partagerons des éclairages sur les raisons pour lesquelles Milvus 2.3 est un excellent choix pour les nouveaux venus et les utilisateurs existants selon trois angles cruciaux : la sélection de la base de données, l’expérience de développement et la fiabilité du système.
Équilibrer les performances, le coût et la scalabilité
Lors du choix d’une base de données vectorielle, la plupart des utilisateurs prennent en compte trois facteurs principaux : les performances, le coût et la scalabilité. La précédente série Milvus 2.x privilégiait la scalabilité, ce qui la rendait adaptable à divers environnements et capable de stocker et de rechercher des milliards de vecteurs. Milvus 2.3 va plus loin dans l’optimisation de sa mise à l’échelle en permettant des transitions fluides de millions à des milliards de vecteurs, grâce à sa séparation cloud-native du stockage et du calcul.
Milvus 2.3 offre également aux utilisateurs plusieurs options de déploiement pour les performances et le coût, notamment des options docker GPU, CPU (ARM64 et x86), ainsi que des options Kubernetes (Milvus Operator et Helm).
Les utilisateurs qui privilégient les performances peuvent choisir Milvus 2.3 avec le docker GPU, qui offre des performances 3 à 10 fois plus rapides que l’option CPU.
Les utilisateurs sensibles aux coûts peuvent choisir l’option ARM64 de Milvus, qui est plus économique tout en maintenant des performances raisonnables.
Milvus 2.3 prend également en charge MMap, un appel système UNIX qui mappe des fichiers et d’autres objets en mémoire, augmentant ainsi considérablement la capacité de données sur une seule machine à coûts réduits. D’après les résultats de nos tests, grâce à la prise en charge de MMap, Milvus peut doubler sa capacité de données tout en limitant la dégradation des performances à moins de 20 %. Nous continuerons à optimiser cette fonctionnalité dans la prochaine version Milvus 2.3.1, avec pour objectif d’étendre la capacité de données jusqu’à 20 fois plus qu’actuellement.
Donner aux développeurs les moyens d’agir avec simplicité
Les applications modernes exigent plus que des fonctionnalités primaires de recherche vectorielle comme l’insertion, la suppression et la récupération. Par exemple, différentes applications nécessitent différentes requêtes, telles que les requêtes vectorielles top-k, les requêtes basées sur la distance et les requêtes filtrées par attributs. De plus, ces applications peuvent nécessiter d’autres méthodes de calcul de la distance vectorielle, notamment la distance euclidienne (L2), le produit interne (IP) et la similarité cosinus (COSINE).
Milvus 2.3 a amélioré son API pour répondre à toutes ces exigences diversifiées, rendant le développement plus simple. Par exemple, la nouvelle fonctionnalité upsert simplifie la gestion des données en combinant l’insertion et les mises à jour de données en une seule ligne de code. L’index ScaNN offre une indexation haute performance, proposant une vitesse de requête plus rapide que les anciennes versions.
Milvus prend également en charge l’intégration des données avec d’autres produits en fournissant des outils de migration et des capacités de capture incrémentale des données afin de rationaliser la gestion des données.
Garantir la stabilité et la disponibilité au niveau de la seconde
Milvus s’est révélé fiable et disponible pour les environnements de production grâce à son optimisation continue.
La série 2.1.x a introduit la réplication de la mémoire, améliorant considérablement la stabilité de son système. La série 2.2.x a ajouté des capacités d’isolation des pannes pour les groupes de ressources, renforçant la résilience de son système. S’appuyant sur les réussites des versions précédentes, Milvus 2.3 introduit le Look Aside Load Balancer, qui permet une détection encore plus rapide des événements de nœuds et garantit un basculement et une extension des ressources en quelques secondes.
Milvus 2.3 inclut également une meilleure gestion de la mémoire, des mises à niveau progressives améliorées et la prise en charge d’un nombre plus important de tables dans un seul cluster, ce qui se traduit par des améliorations supplémentaires de la stabilité globale du système.
Conclusion
Dans un paysage des bases de données vectorielles en évolution rapide, Milvus 2.3 se distingue comme un modèle d’excellence. Il offre tout ce dont les utilisateurs ont besoin dans une base de données vectorielle moderne : hautes performances, évolutivité, disponibilité, stabilité et rentabilité.
À mesure que la technologie continue de progresser, Milvus évolue également. Nous continuerons à optimiser Milvus sans relâche et à introduire des fonctionnalités de pointe dans les prochaines versions, telles que la suppression par expression, le déploiement fluide dans le cloud Azure, la prise en charge améliorée des tableaux, l’optimisation des valeurs par défaut/nulles et l’ajout dynamique de colonnes. Restez à l’écoute.
Ce voyage n’est pas un voyage que nous entreprenons seuls. Nous invitons toute la communauté à explorer activement Milvus, à partager vos points de vue et à contribuer à l’évolution continue de cette technologie remarquable.
Continuer à lire

Why We Built Vector Lakebase: Rethinking Unstructured Data Architecture for AI
Vector Lakebase: a unified, lake-native data foundation for AI workloads — and an answer to what happens after vector databases succeed.

VidTok: Rethinking Video Processing with Compact Tokenization
VidTok tokenizes videos to reduce redundancy while preserving spatial and temporal details for efficient processing.

Milvus WebUI: A Visual Management Tool for Your Vector Database
Explore Milvus WebUI to monitor, manage, and optimize your vector database with real-time insights, performance tracking, and system health monitoring.



