Quelle version de Milvus pour commencer
Le choix de la version appropriée de Milvus est essentiel à la réussite de tout projet utilisant la technologie de recherche vectorielle. Les différentes versions de Milvus étant adaptées à diverses exigences, il est essentiel de comprendre l'importance du choix de la bonne version pour obtenir les résultats souhaités.
La bonne version de Milvus peut aider un développeur à apprendre et à prototyper rapidement ou à optimiser l'utilisation des ressources, à rationaliser les efforts de développement et à garantir la compatibilité avec l'infrastructure et les outils existants. En fin de compte, il s'agit de maintenir la productivité des développeurs et d'améliorer l'efficacité, la fiabilité et la satisfaction des utilisateurs.
Versions disponibles de Milvus
Trois versions de Milvus sont disponibles pour les développeurs, et toutes sont open source. Les trois versions sont Milvus Lite, Milvus Standalone et Milvus Cluster, qui diffèrent par leurs fonctionnalités et la manière dont les utilisateurs prévoient d'utiliser Milvus à court et à long terme. Nous allons donc les étudier individuellement.
Milvus Lite
Comme son nom l'indique, Milvus Lite est une version légère qui s'intègre de manière transparente à Google Colab et Jupyter Notebook. Elle se présente sous la forme d'un binaire unique sans dépendances supplémentaires, ce qui la rend facile à installer et à exécuter sur votre machine ou à intégrer dans des applications Python. En outre, Milvus Lite inclut un serveur Milvus autonome basé sur l'interface de programmation, ce qui permet de l'exécuter directement sur votre machine. Que vous l'intégriez dans votre code Python ou que vous l'utilisiez en tant que serveur autonome dépend entièrement de vos préférences et des exigences spécifiques de votre application.
Caractéristiques et capacités
Milvus Lite comprend toutes les fonctionnalités principales de recherche vectorielle de Milvus.
Capacités de recherche: Prend en charge les recherches top-k, par plage et hybrides, y compris le filtrage des métadonnées, pour répondre à diverses exigences en matière de recherche.
Types d'index et mesures de similarité: Prise en charge de 11 types d'index et de cinq mesures de similarité, ce qui offre des options de flexibilité et de personnalisation pour votre cas d'utilisation spécifique.
Traitement des données: Permet le traitement par lots (Apache Parquet, Arrays, JSON) et par flux, avec une intégration transparente grâce à des connecteurs pour Airbyte, Apache Kafka et Apache Spark.
Opérations CRUD: Offre un support CRUD complet (création, lecture, mise à jour/versement, suppression), offrant aux utilisateurs des capacités complètes de gestion des données.
Applications et limitations
Milvus Lite est idéal pour le prototypage rapide et le développement local, offrant une prise en charge de la configuration rapide et de l'expérimentation avec des ensembles de données à petite échelle sur votre machine. Cependant, ses limites deviennent apparentes lors de la transition vers des environnements de production avec des ensembles de données plus importants et des exigences d'infrastructure plus strictes. Ainsi, bien que Milvus Lite soit un excellent outil pour l'exploration et les tests initiaux, il n'est peut-être pas adapté au déploiement d'applications dans des environnements à fort volume ou prêts pour la production.
Ressources disponibles
Milvus autonome
Milvus offre deux modes opérationnels : Autonome et Cluster. Les deux modes sont identiques en ce qui concerne les caractéristiques de base de la base de données vectorielle et diffèrent en ce qui concerne la prise en charge de la taille des données et les exigences en matière d'évolutivité. Cette distinction vous permet de sélectionner le mode qui correspond le mieux à la taille de vos ensembles de données, au volume de trafic et à d'autres exigences d'infrastructure pour la production.
Milvus Standalone est un mode de fonctionnement du système de base de données vectorielles Milvus dans lequel il fonctionne indépendamment en tant qu'instance unique sans clustering ni configuration distribuée. Milvus s'exécute sur un seul serveur ou une seule machine dans ce mode, fournissant des fonctionnalités telles que l'indexation et la recherche de vecteurs. Il convient aux situations où l'échelle des données et du volume de trafic est relativement petite et ne nécessite pas les capacités distribuées fournies par une configuration en grappe.
Caractéristiques et capacités
Haute performance: Effectuez des recherches vectorielles sur des ensembles de données volumineux (des milliards ou plus) avec une rapidité et une efficacité exceptionnelles.
Capacités de recherche: Prise en charge des recherches top-k, par plage et hybrides, y compris le filtrage des métadonnées, pour répondre à diverses exigences de recherche.
Types d'index et mesures de similarité: Prise en charge de 11 types d'index et de 5 mesures de similarité, offrant une grande souplesse et des options de personnalisation pour votre cas d'utilisation spécifique.
Traitement des données: Permet le traitement par lots (Apache Parquet, Arrays, Json) et par flux, avec une intégration transparente grâce à des connecteurs pour Airbyte, Apache Kafka et Apache Spark.
Réplication des données et basculement: Les fonctions intégrées de réplication et de basculement/failback garantissent l'intégrité des données et la disponibilité des applications, même en cas d'interruption ou de panne.
Évolutivité: Bénéficiez d'une évolutivité dynamique grâce à la mise à l'échelle au niveau des composants, ce qui permet une mise à l'échelle transparente vers le haut ou vers le bas en fonction de la demande. Milvus peut procéder à une mise à l'échelle automatique au niveau des composants, optimisant ainsi l'allocation des ressources pour une meilleure efficacité.
Multi-tenance: Prend en charge la multi-location avec la capacité de gérer jusqu'à 10 000 collections/partitions dans un cluster, ce qui permet une utilisation efficace des ressources et une isolation pour différents utilisateurs ou applications.
Opérations CRUD: Prise en charge complète des opérations CRUD (création, lecture, mise à jour/suppression, suppression), offrant aux utilisateurs des capacités complètes de gestion des données.
Composants essentiels :
Milvus : le composant fonctionnel de base.
etcd : Le moteur de métadonnées responsable de l'accès aux métadonnées et de leur stockage à partir des composants internes de Milvus, y compris les proxies, les nœuds d'index, etc.
MinIO : le moteur de stockage responsable de la persistance des données au sein de Milvus.
Figure 1 : Architecture autonome de Milvus
Ressources disponibles
Documentation
Milvus Cluster
Milvus Cluster est un mode de fonctionnement du système de base de données vectorielle Milvus dans lequel il fonctionne et est distribué sur plusieurs nœuds ou serveurs. Dans ce mode, les instances Milvus sont regroupées pour former un système unifié qui peut gérer de plus grands volumes de données et des charges de trafic plus élevées par rapport à une configuration autonome. Milvus Cluster offre des fonctions d'évolutivité, de tolérance aux pannes et d'équilibrage de charge, ce qui le rend adapté aux scénarios qui doivent traiter des données volumineuses et servir efficacement de nombreuses requêtes simultanées.
Fonctionnalités et capacités
Hérite de toutes les fonctionnalités disponibles dans Milvus Standalone, y compris la recherche vectorielle haute performance, la prise en charge de plusieurs types d'index et de métriques de similarité, et l'intégration transparente avec les frameworks de traitement par lots et par flux.
Offre une disponibilité, des performances et une optimisation des coûts inégalées en tirant parti de l'informatique distribuée et de l'équilibrage des charges sur plusieurs nœuds.
Permet de déployer et de mettre à l'échelle des charges de travail sécurisées de niveau professionnel avec des coûts totaux réduits en utilisant efficacement les ressources sur l'ensemble du cluster et en optimisant l'allocation des ressources en fonction des demandes de charge de travail.
Composants essentiels :
Milvus Cluster comprend huit composants microservices et trois dépendances tierces. Tous les microservices peuvent être déployés sur Kubernetes indépendamment les uns des autres.
Composants de microservices
Coordonnée racine
Proxy
Coordonnateur de requête
Nœud de requête
Coordonnée de l'index
Nœud d'index
Coordonnée de données
Nœud de données
Dépendances tierces
etcd : Stocke les métadonnées des différents composants du cluster.
MinIO : Responsable de la persistance des données des fichiers volumineux dans le cluster, tels que les fichiers d'index et les fichiers journaux binaires.
Pulsar : Gère les journaux des opérations de mutation récentes, produit des journaux en continu et fournit des services de publication et d'abonnement de journaux.
Figure 2 : Architecture du cluster Milvus
Ressources disponibles
Documentation sur la façon de démarrer
Décider de la version de Milvus à utiliser
Lorsque vous décidez de la version de Milvus à utiliser pour votre projet, vous devez prendre en compte des facteurs tels que la taille de votre ensemble de données, le volume de trafic, les exigences d'évolutivité et les contraintes de l'environnement de production. Milvus Lite est parfait pour le prototypage sur votre ordinateur portable. Milvus Standalone offre de hautes performances et une grande flexibilité pour effectuer des recherches vectorielles sur vos ensembles de données, ce qui le rend adapté aux déploiements à plus petite échelle, à la CI/CD et aux déploiements hors ligne lorsque vous n'avez pas de prise en charge Kubernetes... Et enfin, Milvus Cluster offre une disponibilité, une évolutivité et une optimisation des coûts inégalées pour les charges de travail de niveau entreprise, ce qui en fait le choix privilégié pour les environnements de production à grande échelle et hautement disponibles.
Il existe une autre version qui est une version sans tracas, il s'agit d'une version gérée de Milvus appelée Zilliz Cloud.
En fin de compte, la version de Milvus dépendra de votre cas d'utilisation spécifique, de vos exigences en matière d'infrastructure et de vos objectifs à long terme. En évaluant soigneusement ces facteurs et en comprenant les caractéristiques et les capacités de chaque version, vous pouvez prendre une décision éclairée qui s'aligne sur les besoins et les objectifs de votre projet. Que vous choisissiez Milvus Standalone ou Milvus Cluster, vous pouvez exploiter la puissance des bases de données vectorielles pour améliorer les performances et l'efficacité de vos applications d'IA.
- Versions disponibles de Milvus
- Milvus Lite
- Milvus autonome
- Milvus Cluster
- Décider de la version de Milvus à utiliser
On This Page
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word