Partage de technologie

Entrepôt de données Hive multi-locataires

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1. Concept

La multi-location correspond à un seul locataire. Cet article se concentre sur la multi-location pour plus de compréhension.

1.1 Multilocation

La technologie multi-tenant, ou technologie multi-tenant, appelée SaaS, est une technologie d'architecture logicielle qui permet de partager le même système ou les mêmes composants de programme dans un environnement multi-utilisateurs (les multi-utilisateurs ici sont généralement destinés aux utilisateurs d'entreprise). et peut assurer l'isolement des données entre les utilisateurs. En termes simples : une seule instance d'application s'exécute sur un serveur et dessert plusieurs locataires (clients). De la définition, nous pouvons comprendre :La multi-location est une architecture qui vise à permettre à plusieurs utilisateurs d'utiliser le même ensemble de programmes et à assurer l'isolation des données entre les utilisateurs.

1.2 Locataire unique

La différence entre les architectures à locataire unique et à locataire multiple réside dans le fait que le locataire unique crée des applications logicielles et des environnements de prise en charge distincts pour chaque utilisateur. Le SaaS à locataire unique est largement cité dans les applications où les clients doivent prendre en charge la personnalisation, soit pour des raisons géographiques, soit parce qu'ils nécessitent des contrôles de sécurité plus élevés. Grâce au modèle à locataire unique, chaque client dispose d'une copie de la base de données et du système d'exploitation placée sur un serveur indépendant ou dans un environnement de réseau virtuel isolé à l'aide de mesures de sécurité strictes.

1.3 La différence entre un locataire unique et un locataire multiple

  1. Il existe différents niveaux de contrôle de sécurité. Les bases de données multi-locataires stockent les données de plusieurs locataires indépendants. Bien qu'une isolation de sécurité soit mise en place, le niveau de contrôle de sécurité est toujours supérieur à celui d'un seul locataire. Étant donné qu'un seul locataire dispose d'un environnement logiciel et matériel indépendant et que la base de données ne stocke que les données d'un seul locataire, la possibilité de fuite de données est techniquement éliminée. L'architecture à locataire unique est parfois plus adaptée à certains secteurs qui nécessitent un contrôle de sécurité, voire même. exigences de conformité légale.
  2. Les sauvegardes de données varient en complexité. Un seul locataire dispose d’une base de données indépendante, et la sauvegarde et la restauration des bases de données clients sont très simples. Les locataires multiples partagent une base de données et les données des locataires sont à la fois isolées et partagées. Le système ne peut pas effectuer automatiquement des sauvegardes indépendantes de l'entreprise chaque jour.
  3. Les délais de mise à niveau des contrôles varient. Les coûts de maintenance d’un système multi-tenant sont faibles et lorsqu’un système multi-tenant est mis à niveau, il ne doit être mis à jour qu’une seule fois. Le personnel de maintenance n'a pas besoin de mettre à jour chaque utilisateur, ce qui permet d'économiser beaucoup de coûts d'exploitation et de maintenance. Ceci est utile pour les systèmes dans lesquels tous les clients font la même chose. Cependant, si la mise à niveau du système survient lorsque l'entreprise est particulièrement occupée, cela aura inévitablement un impact sur les utilisateurs de l'entreprise.

Scénarios d'application : la multilocation convient à plusieurs entreprises (départements) différentes au sein du même groupe (entreprise). Même si les données sont divulguées, elles ne seront pas divulguées vers l'extérieur.

2. Solution d'isolation des données multi-locataires

  • base de données indépendante
  • Base de données partagée, schéma indépendant
  • Base de données partagée, schéma partagé, table de données partagée

2.1 Base de données indépendante

Il s'agit de la première solution, un locataire et une base de données.Cette solution offre le plus haut niveau d’isolation des données utilisateur et la meilleure sécurité, mais son coût est plus élevé.

  • Avantages : fournir des bases de données indépendantes pour différents locataires permet de simplifier la conception d'expansion du modèle de données et de répondre aux besoins uniques des différents locataires. En cas de panne, il est relativement simple de restaurer les données.
  • Inconvénients : augmente le nombre d'installations de bases de données, ce qui entraîne une augmentation des coûts de maintenance et d'acquisition.

Cette solution est similaire à la solution traditionnelle : un client, un ensemble de données et un ensemble de déploiement. La seule différence est que le logiciel est déployé uniformément chez l'opérateur. Si vous êtes confronté à des locataires tels que des banques et des hôpitaux qui nécessitent des niveaux d'isolation des données très élevés, vous pouvez choisir ce modèle pour augmenter le prix de location. Si le prix est bas et que le produit emprunte une voie à bas prix, cette solution est généralement inabordable pour les opérateurs.

2.2 Base de données partagée, schéma indépendant

Il s'agit de la deuxième solution, c'est-à-dire que plusieurs ou tous les locataires partagent la base de données, mais chaque locataire possède un schéma (également appelé utilisateur). Les bibliothèques sous-jacentes sont, par exemple : DB2, ORACLE, etc. Il peut y avoir plusieurs SCHEMA sous une même base de données.

  • Avantages : Fournit un certain degré d'isolation logique des données pour les locataires ayant des exigences de sécurité plus élevées, mais sans une isolation complète, chaque base de données peut prendre en charge un plus grand nombre de locataires.
  • Inconvénients : en cas de panne, la récupération des données est difficile car la restauration de la base de données impliquera les données d'autres locataires. Si des statistiques entre locataires sont requises, il y aura certaines difficultés.

2.3 Base de données partagée, schéma partagé, table de données partagée

C'est la troisième option, Autrement dit, les locataires partagent la même base de données et le même schéma, mais ajoutent le champ de données multi-locataires TenantID à la table.C'est le mode avec le plus haut degré de partage et le plus bas niveau d'isolement
Autrement dit, chaque fois qu'une donnée est insérée, un identifiant client est requis. De cette manière, les données des différents clients peuvent être distinguées dans un même tableau.

  • Avantages : Comparaison de trois options,La troisième option présente les coûts de maintenance et d'acquisition les plus bas et autorise le plus grand nombre de locataires par base de données.
  • Inconvénients : le niveau d'isolement le plus bas et la sécurité la plus faible, nécessitant davantage de développement de sécurité pendant la conception et le développement ; la sauvegarde et la récupération des données sont les plus difficiles, nécessitant une sauvegarde et une restauration table par table.Cette solution est la mieux adaptée si vous souhaitez servir le plus grand nombre de locataires avec le moins de serveurs, et que les locataires acceptent de sacrifier le niveau d'isolement en échange de coûts inférieurs.

2.4 Résumé

Au cours du processus de mise en œuvre du SaaS, un point à prendre en compte est évident : comment concevoir les données d'application pour prendre en charge les locataires multiples. L'idée de cette conception est de trouver un équilibre entre le partage des données, l'isolation de la sécurité et les performances.Les caractéristiques des trois modes peuvent être résumées en une seule image

Entrepôt de données Hive multi-tenant multi-tenant saas_multi-tenant