Milvus a introduit MMap pour une gestion des données redéfinie et une capacité de stockage accrue
Milvus est la solution la plus rapide parmi les bases de données vectorielles open source, destinée aux utilisateurs ayant des exigences de performance intensives. Cependant, la diversité des besoins des utilisateurs reflète les données avec lesquelles ils travaillent. Certains privilégient des solutions économiques et un stockage étendu plutôt que la vitesse pure. Comprenant cet éventail de demandes, Milvus introduit la fonctionnalité MMap, redéfinissant la manière dont nous traitons de grands volumes de données tout en promettant une efficacité des coûts sans sacrifier les fonctionnalités.
Qu’est-ce que MMap ?
MMap, abréviation de memory-mapped files, comble le fossé entre les fichiers et la mémoire au sein des systèmes d’exploitation. Cette technologie permet à Milvus de mapper de grands fichiers directement dans l’espace mémoire du système, transformant les fichiers en blocs mémoire contigus. Cette intégration élimine le besoin d’opérations explicites de lecture ou d’écriture, changeant fondamentalement la manière dont Milvus gère les données. Elle garantit un accès fluide et un stockage efficace pour les grands fichiers ou les situations où les utilisateurs doivent accéder aux fichiers de manière aléatoire.
À qui profite MMap ?
Les bases de données vectorielles exigent une capacité mémoire substantielle en raison des exigences de stockage des données vectorielles. Avec la fonctionnalité MMap, le traitement de davantage de données dans une mémoire limitée devient une réalité. Cependant, cette capacité accrue a un coût en matière de performance. Le système gère intelligemment la mémoire, en expulsant certaines données en fonction de la charge et de l’utilisation. Cette expulsion permet à Milvus de traiter davantage de données avec la même capacité mémoire.
Lors de nos tests, nous avons observé qu’avec une mémoire abondante, toutes les données résident en mémoire après une période de préchauffage, préservant les performances du système. Cependant, à mesure que le volume de données augmente, les performances diminuent progressivement. Par conséquent, nous recommandons la fonctionnalité MMap aux utilisateurs moins sensibles aux fluctuations de performance.
Activer MMap dans Milvus : une configuration simple
Activer MMap dans Milvus est remarquablement simple. Il vous suffit de modifier le fichier milvus.yaml : ajoutez l’élément mmapDirPath sous la configuration queryNode et définissez un chemin valide comme valeur.
Trouver le bon équilibre : performances, stockage et limites du système
Les schémas d’accès aux données ont un impact significatif sur les performances. La fonctionnalité MMap de Milvus optimise l’accès aux données en fonction de la localité. MMap permet à Milvus d’écrire les données scalaires directement sur le disque pour les segments de données accessibles séquentiellement. Les données de longueur variable, telles que les chaînes, sont aplaties et indexées à l’aide d’un tableau d’offsets en mémoire. Cette approche garantit la localité d’accès aux données et élimine la surcharge liée au stockage séparé de chaque donnée de longueur variable. Les optimisations pour les index vectoriels sont minutieuses. MMap est utilisé de manière sélective pour les données vectorielles tout en conservant les listes d’adjacence en mémoire, économisant ainsi une mémoire significative sans compromettre les performances.
De plus, MMap maximise le traitement des données en minimisant l’utilisation de la mémoire. Contrairement aux versions précédentes de Milvus où QueryNode copiait des jeux de données entiers, MMap adopte un processus de streaming rationalisé et sans copie pendant le développement. Cette optimisation réduit drastiquement la surcharge mémoire.
Les résultats de nos tests internes montrent que Milvus peut gérer efficacement le double du volume de données lorsque MMap est activé.
La suite : innovation continue et améliorations centrées sur l’utilisateur
Bien que la fonctionnalité MMap soit en phase bêta, l’équipe de Milvus s’engage dans une amélioration continue. Les futures mises à jour affineront l’utilisation de la mémoire du système, permettant à Milvus de prendre en charge des volumes de données encore plus importants sur un seul nœud. Les utilisateurs peuvent s’attendre à un contrôle plus granulaire de la fonctionnalité MMap, permettant des modifications dynamiques des collections et des modes avancés de chargement des champs. Ces améliorations offrent une flexibilité sans précédent, permettant aux utilisateurs d’adapter leurs stratégies de traitement des données à des exigences spécifiques.
Conclusion : redéfinir l’excellence du traitement des données avec Milvus MMap
La fonctionnalité MMap de Milvus 2.3 marque un bond significatif dans la technologie de traitement des données. En trouvant un équilibre délicat entre les performances, les coûts et les limites du système, Milvus permet aux utilisateurs de gérer d’immenses volumes de données de manière efficace et rentable. À mesure que Milvus continue d’évoluer, il reste à l’avant-garde des solutions innovantes, redéfinissant les limites de ce qui est réalisable en matière de gestion des données.
Restez à l’écoute pour découvrir d’autres avancées révolutionnaires alors que Milvus poursuit son chemin vers une excellence inégalée dans le traitement des données.
Continuer à lire

What Is a Vector Lakebase?
A Vector Lakebase is a unified, lake-native data architecture for AI that combines vector-database-grade serving with open lake storage, reusable lake-level indexes, and a shared semantic layer.

Vector Lakebase: End the AI Data Silo
Learn how Vector Lakebase unifies vector search, data lakes, and AI data operations so teams can serve RAG and agents without copy-and-sync pipelines.

How to Build an Enterprise-Ready RAG Pipeline on AWS with Bedrock, Zilliz Cloud, and LangChain
Build production-ready enterprise RAG with AWS Bedrock, Nova models, Zilliz Cloud, and LangChain. Complete tutorial with deployable code.



