Mise en œuvre de la multi-location

Dans Milvus, la multi-location signifie que plusieurs clients ou équipes (appelés locataires)partagent le même cluster tout en conservant des environnements de données isolés.

Milvus prend en charge quatre stratégies de multi-location, chacune offrant un compromis différent entre l'évolutivité, l'isolation des données et la flexibilité. Ce guide vous présente chaque option et vous aide à choisir la stratégie la plus adaptée à votre cas d'utilisation.

Stratégies multi-tenant

Milvus prend en charge le multi-tenant à quatre niveaux : Base de données, Collection, Partition et Clé de partition.

Multi-tenance au niveau de la base de données

Avec la location multiple au niveau de la base de données, chaque locataire reçoit une base de données correspondante contenant une ou plusieurs collections.

Database Level Multi Tenancy Multi-tenance au niveau de la base de données

  • Évolutivité: La stratégie de multi-location au niveau de la base de données prend en charge un maximum de 64 locataires par défaut.

  • Isolation des données: Les données de chaque base sont entièrement séparées, offrant une isolation des données de niveau entreprise, idéale pour les environnements réglementés ou les clients ayant des besoins de conformité stricts.

  • Flexibilité: Chaque base de données peut avoir des collections avec des schémas différents, offrant une organisation des données très flexible et permettant à chaque locataire d'avoir son propre schéma de données.

  • Autres: Cette stratégie prend également en charge le RBAC, ce qui permet de contrôler finement l'accès des utilisateurs par locataire. En outre, vous pouvez charger ou libérer des données de manière flexible pour des locataires spécifiques afin de gérer efficacement les données chaudes et froides.

Multi-tenance au niveau de la collection

Avec la multi-location au niveau de la collection, chaque locataire se voit attribuer une collection, ce qui permet d'isoler fortement les données.

Collection Level Multi Tenancy Multi-tenance au niveau de la collection

  • Évolutivité: Étant donné qu'un cluster peut contenir jusqu'à 65 536 collections par défaut, cette stratégie peut s'adapter au même nombre de locataires au sein du cluster.

  • Isolation des données: Les collections sont physiquement isolées les unes des autres. Cette stratégie assure une forte isolation des données.

  • Flexibilité: Cette stratégie permet à chaque collection d'avoir son propre schéma, ce qui permet d'accueillir des locataires ayant des schémas de données différents.

  • Autres: Cette stratégie prend également en charge le RBAC, ce qui permet un contrôle d'accès granulaire sur les locataires. En outre, vous pouvez charger ou libérer des données de manière flexible pour des locataires spécifiques afin de gérer efficacement les données chaudes et froides.

Multi-tenance au niveau des partitions

Dans la multi-location au niveau des partitions, chaque locataire est assigné à une partition créée manuellement au sein d'une collection partagée.

Partition Level Multi Tenancy Multi-locations au niveau des partitions

  • Évolutivité: Une collection peut contenir jusqu'à 1 024 partitions par collection, ce qui permet d'avoir le même nombre de locataires.

  • Isolation des données: Les données de chaque locataire sont physiquement séparées par des partitions.

  • Flexibilité: Cette stratégie exige que tous les locataires partagent le même schéma de données. De plus, les partitions doivent être créées manuellement.

  • Autres: Le RBAC n'est pas pris en charge au niveau des partitions. Les locataires peuvent être interrogés individuellement ou à travers plusieurs partitions, ce qui rend cette approche bien adaptée aux scénarios impliquant des requêtes agrégées ou des analyses à travers des segments de locataires. En outre, vous pouvez charger ou libérer des données de manière flexible pour des locataires spécifiques afin de gérer efficacement les données chaudes et froides.

Multi-location au niveau de la clé de partition

Avec cette stratégie, tous les locataires partagent une collection et un schéma uniques, mais les données de chaque locataire sont automatiquement acheminées vers 16 partitions physiquement isolées en fonction de la valeur de la clé de partition. Bien que chaque partition physique puisse contenir plusieurs locataires, les données des différents locataires restent logiquement séparées.

Partition Key Level Multi Tenancy Niveau de la clé de partition Multi-locataires

  • Évolutivité: La stratégie au niveau de la clé de partition offre l'approche la plus évolutive, prenant en charge des millions de locataires.

  • Isolation des données: Cette stratégie offre une isolation des données relativement faible car plusieurs locataires peuvent partager une partition physique.

  • Flexibilité: Étant donné que tous les locataires doivent partager le même schéma de données, cette stratégie offre une flexibilité limitée en matière de données.

  • Autres: Le RBAC n'est pas pris en charge au niveau de la clé de partition. Les locataires peuvent être interrogés individuellement ou à travers plusieurs partitions, ce qui rend cette approche bien adaptée aux scénarios impliquant des requêtes agrégées ou des analyses à travers des segments de locataires.

Choisir la bonne stratégie de multi-location

Le tableau ci-dessous propose une comparaison complète entre les quatre niveaux de stratégies de multi-location.

Niveau base de données

Niveau collection

Niveau partition

Niveau de la clé de partition

Isolation des données

Physique

Physique

Physique

Physique + logique

Nombre maximal de locataires

Par défaut, 64. Vous pouvez l'augmenter en modifiant le paramètre maxDatabaseNum dans le fichier de configuration Milvus.yaml.

Par défaut, 65 536. Vous pouvez l'augmenter en modifiant le paramètre maxCollectionNum dans le fichier de configuration Milvus.yaml.

Jusqu'à 1 024 par collection.

Millions

Flexibilité du schéma de données

Élevée

Moyenne

Faible

Faible

Prise en charge RBAC

Oui

Oui

Non

Non

Performances de recherche

Forte

Forte

Moyenne

Moyenne

Prise en charge de la recherche inter-locataires

Non

Non

Oui

Oui

Prise en charge du traitement efficace des données chaudes et froides

Oui

Oui

Oui

Non Actuellement, la stratégie au niveau des clés de partition n'est pas prise en charge.

Plusieurs facteurs doivent être pris en compte lors du choix de la stratégie de multi-location dans Milvus.

  1. Évolutivité : Clé de partition > Partition > Collection > Base de données

    Si vous prévoyez de prendre en charge un très grand nombre de locataires (des millions ou plus), utilisez la stratégie au niveau de la clé de partition.

  2. Exigences élevées en matière d'isolation des données: Base de données = Collection > Partition > Clé de partition

    Choisissez les stratégies au niveau de la base de données, de la collection ou de la partition si vous avez des exigences strictes en matière d'isolation physique des données.

  3. Schéma de données flexible pour les données de chaque locataire : Base de données > Collection > Partition = Clé de partition

    Les stratégies au niveau de la base de données et de la collection offrent une flexibilité totale en matière de schémas de données. Si les structures de données de vos locataires sont différentes, choisissez la multi-location au niveau de la base de données ou de la collection.

  4. Autres

    1. Performances : Les performances de recherche sont déterminées par divers facteurs, notamment les index, les paramètres de recherche et les configurations des machines. Milvus prend également en charge le réglage des performances. Il est recommandé de tester les performances réelles avant de choisir une stratégie de multi-location.

    2. Traitement efficace des données chaudes et froides: Actuellement, les stratégies au niveau de la base de données, de la collection et de la partition prennent toutes en charge la gestion des données chaudes et froides.

    3. Recherches inter-locataires: Seules les stratégies au niveau de la partition et de la clé de partition prennent en charge les requêtes inter-locataires.

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

Cette page a-t - elle été utile ?