Vous êtes sur la page 1sur 5

L'architecture d'un SGBD (Système de Gestion de Bases de Données) est la façon dont il est conçu

pour stocker, gérer, organiser et accéder aux données. Les différentes couches de l'architecture d'un
SGBD sont :

1. La couche physique : Cette couche gère la façon dont les données sont stockées
physiquement sur les disques, les disques durs et les dispositifs de stockage similaires. Elle
traite également la gestion de l'espace disque et les mécanismes de récupération en cas de
perte de données.

2. La couche logique : Cette couche traite de la façon dont les données sont organisées dans la
base de données. Elle traite également de la façon dont les utilisateurs peuvent accéder à ces
données à travers des requêtes SQL.

3. La couche d'interface : Cette couche fournit une interface utilisateur pour accéder aux
données dans la base de données. Elle traite également des mécanismes de sécurité et
d'authentification pour accéder aux données.

4. La couche de gestion des transactions : Cette couche traite de la gestion des transactions qui
sont exécutées sur la base de données. Elle traite également des mécanismes de contrôle de
concurrence pour gérer les conflits d'accès aux données.

5. La couche de gestion des données : Cette couche traite de la façon dont les données sont
manipulées dans la base de données. Elle traite également des mécanismes de gestion des
index pour optimiser l'accès aux données.

En général, les SGBD modernes utilisent une architecture en couches pour assurer une gestion
efficace des données dans la base de données et pour offrir des fonctionnalités avancées aux
utilisateurs finaux.

L'architecture 1-tiers, également connue sous le nom d'architecture "client-serveur simple", est une
architecture de base de données dans laquelle toutes les couches du système (présentation, logique
métier et stockage de données) sont hébergées sur une seule machine ou serveur. Dans ce modèle,
toutes les interactions avec la base de données se font localement sur cette machine.

L'architecture 1-tiers était couramment utilisée dans les premiers systèmes de gestion de bases de
données, mais elle est devenue moins courante en raison de plusieurs limitations :

 Évolutivité : L'architecture 1-tiers n'est pas évolutive, car toutes les requêtes de l'utilisateur
sont traitées sur une seule machine. Les performances peuvent donc être réduites si
plusieurs utilisateurs accèdent simultanément à la base de données.

 Fiabilité : Si la machine unique qui héberge la base de données tombe en panne, l'ensemble
du système sera hors service. Cela peut entraîner une perte de données et une interruption
de service pour les utilisateurs.

 Sécurité : Les données stockées localement sur une seule machine sont vulnérables aux
attaques de sécurité.

Malgré ces limitations, l'architecture 1-tiers peut encore être utilisée dans des environnements de
développement ou de test où la charge utilisateur est faible et où la sécurité et la disponibilité ne
sont pas des préoccupations majeures.

L'architecture 1-tiers, également appelée architecture monolithique, est la plus simple des
architectures de système d'information. Elle repose sur un seul serveur qui exécute toutes les
fonctions du système. Par exemple, si vous utilisez une application de traitement de texte comme
Word, cette application est installée sur votre ordinateur, qui sert également de serveur.

Dans l'architecture 1-tiers, toutes les couches (présentation, logique métier et stockage de
données) sont combinées en une seule couche. Cela signifie que toutes les opérations, telles que
l'affichage de l'interface utilisateur, le traitement des commandes et le stockage des données, sont
exécutées sur le même serveur.

L'architecture 1-tiers est simple et facile à gérer, car tout est exécuté sur un seul serveur.
Cependant, elle présente également des inconvénients. Par exemple, si le serveur tombe en panne,
toutes les fonctions du système sont également indisponibles. De plus, cette architecture n'est pas
très évolutive, car elle n'offre pas de séparation claire entre les différentes fonctions du système,
ce qui rend difficile l'ajout de nouvelles fonctionnalités.

En résumé, l'architecture 1-tiers est une architecture simple qui combine toutes les couches en une
seule couche sur un seul serveur. Elle est souvent utilisée pour les applications simples, autonomes
et ne nécessitant pas de ressources importantes, comme les logiciels de traitement de texte ou les
jeux vidéo hors ligne.

L'architecture 2-tiers, également connue sous le nom d'architecture "client-serveur deux niveaux",
est une architecture de base de données dans laquelle la couche de présentation et la couche de
stockage de données sont séparées. Dans ce modèle, un client (ou une application) envoie des
requêtes à un serveur de base de données, qui renvoie les résultats de la requête au client.

Dans cette architecture, le client effectue le traitement de la logique métier, tandis que le serveur de
base de données gère le stockage et l'accès aux données. L'architecture 2-tiers est couramment
utilisée dans les applications de bureau, où l'application cliente est installée sur l'ordinateur de
l'utilisateur.

L'architecture 2-tiers présente des avantages par rapport à l'architecture 1-tiers :

 Évolutivité : L'architecture 2-tiers permet une évolutivité horizontale en ajoutant des


serveurs de base de données supplémentaires pour gérer les demandes de requêtes
supplémentaires.

 Fiabilité : Si un serveur tombe en panne, les autres serveurs peuvent prendre le relais et
assurer la continuité du service. De plus, les données sont stockées sur des serveurs dédiés,
ce qui réduit les risques de perte de données.

 Sécurité : Les serveurs de base de données peuvent être sécurisés et contrôlés pour garantir
que seuls les utilisateurs autorisés peuvent accéder aux données.

Cependant, l'architecture 2-tiers peut également présenter des inconvénients :

 Coûts : La nécessité de disposer de serveurs dédiés peut rendre l'architecture 2-tiers plus
coûteuse que l'architecture 1-tiers.

 Charge client : Le traitement de la logique métier sur le client peut entraîner une charge
accrue sur l'ordinateur de l'utilisateur, ce qui peut affecter les performances globales de
l'application.
Pensez à un logiciel de traitement de texte comme Microsoft Word. Lorsque vous utilisez Word
pour écrire un document, vous êtes l'utilisateur du logiciel et votre ordinateur est le serveur.

Dans l'architecture 2-tiers, le logiciel de traitement de texte et les fichiers de document sont
stockés sur votre ordinateur (la couche de présentation et la couche de stockage de données sont
combinées en une seule couche). Lorsque vous utilisez le logiciel pour modifier le document,
toutes les opérations sont effectuées sur votre ordinateur, sans avoir besoin d'un serveur
supplémentaire pour effectuer la logique métier.

Ainsi, dans l'architecture 2-tiers, il n'y a que deux couches distinctes : la couche de présentation et
la couche de stockage de données combinées. Toutes les opérations sont effectuées sur votre
ordinateur local sans avoir besoin d'un serveur supplémentaire.

En résumé, l'architecture 2-tiers est une architecture simple qui consiste en deux couches
seulement : la couche de présentation et la couche de stockage de données combinées. Elle est
souvent utilisée pour les applications autonomes telles que les logiciels de bureau, les jeux vidéo,
les applications mobiles hors ligne, etc.

L'architecture 3-tiers, également connue sous le nom d'architecture "client-serveur trois niveaux",
est une architecture de base de données dans laquelle la couche de présentation, la couche de
logique métier et la couche de stockage de données sont séparées. Dans ce modèle, un client envoie
des requêtes à un serveur d'application, qui traite la logique métier, puis envoie des requêtes à un
serveur de base de données pour récupérer les données.

Dans cette architecture, la couche de présentation est responsable de l'interface utilisateur, la


couche de logique métier est responsable du traitement de la logique applicative et la couche de
stockage de données est responsable du stockage et de l'accès aux données. L'architecture 3-tiers est
couramment utilisée dans les applications Web, où l'application est exécutée sur un serveur Web
distant et accessible via un navigateur Web.

L'architecture 3-tiers présente des avantages par rapport aux architectures 1-tiers et 2-tiers :

 Évolutivité : L'architecture 3-tiers permet une évolutivité horizontale en ajoutant des


serveurs d'application et de base de données supplémentaires pour gérer les demandes de
requêtes supplémentaires.

 Fiabilité : Si un serveur tombe en panne, les autres serveurs peuvent prendre le relais et
assurer la continuité du service. De plus, les données sont stockées sur des serveurs dédiés,
ce qui réduit les risques de perte de données.

 Sécurité : Les serveurs d'application et de base de données peuvent être sécurisés et


contrôlés pour garantir que seuls les utilisateurs autorisés peuvent accéder aux données.

 Performances : L'architecture 3-tiers permet de réduire la charge sur le client en effectuant


le traitement de la logique métier sur le serveur d'application, ce qui améliore les
performances globales de l'application.

Cependant, l'architecture 3-tiers peut également présenter des inconvénients :

 Complexité : La séparation des couches peut rendre l'architecture 3-tiers plus complexe à
mettre en œuvre et à maintenir que les architectures 1-tiers et 2-tiers.

 Coûts : La nécessité de disposer de serveurs dédiés peut rendre l'architecture 3-tiers plus
coûteuse que les architectures 1-tiers et 2-tiers.
Malgré ces inconvénients, l'architecture 3-tiers reste l'une des architectures les plus couramment
utilisées pour les applications Web et les grandes applications d'entreprise.

Pensez à une application web telle qu'un site de e-commerce comme Amazon. Lorsque vous visitez le
site, vous êtes le client, et le site est le serveur. Lorsque vous recherchez un produit ou passez une
commande, vous envoyez une requête au site.

Maintenant, imaginez que le site soit divisé en trois parties distinctes :

 La première partie est la partie "Présentation" : c'est la partie du site que vous voyez en
tant que client. Cela comprend l'interface utilisateur, les boutons, les menus et les
formulaires que vous utilisez pour naviguer sur le site.

 La deuxième partie est la partie "Logique métier" : c'est là que toutes les règles et les
opérations commerciales sont effectuées. Par exemple, lorsque vous ajoutez un produit à
votre panier, la logique métier vérifie si le produit est en stock et calcule le prix total de
votre commande.

 La troisième partie est la partie "Stockage de données" : c'est là que toutes les
informations sur les produits, les commandes et les clients sont stockées. Cette partie du
site gère la base de données qui stocke toutes les informations nécessaires pour que le site
fonctionne.

Maintenant, imaginez que chaque partie du site soit gérée par un serveur distinct. Vous avez un
serveur pour la partie présentation, un serveur pour la partie logique métier et un serveur pour la
partie stockage de données. Lorsque vous envoyez une requête au site, votre demande est
transmise de la partie présentation au serveur de la partie logique métier, qui effectue les
opérations nécessaires, puis transmet la requête au serveur de stockage de données pour
récupérer les informations nécessaires.

En résumé, l'architecture 3-tiers consiste à diviser une application en trois parties distinctes,
chacune gérée par un serveur différent. Cela permet de séparer les responsabilités de chaque
partie et de rendre l'application plus évolutive, plus fiable, plus sécurisée et plus performante.

L'architecture logique d'un SGBD (Système de Gestion de Base de Données) définit la


structure de l'ensemble du système de base de données. Elle est constituée de plusieurs
composants qui travaillent ensemble pour stocker, organiser et accéder aux données de
manière efficace et sécurisée. Voici les principaux composants de l'architecture logique des
SGBD :

1. Le modèle de données : c'est la représentation logique des données stockées dans la


base de données. Il peut s'agir, par exemple, d'un modèle entité-association ou d'un
modèle relationnel.
2. Le langage de définition de données (LDD) : c'est le langage utilisé pour définir la
structure de la base de données, c'est-à-dire les tables, les colonnes, les clés primaires
et étrangères, etc.
3. Le langage de manipulation de données (LMD) : c'est le langage utilisé pour
manipuler les données dans la base de données, c'est-à-dire pour effectuer des requêtes
pour récupérer, insérer, mettre à jour ou supprimer des données.
4. Le moteur de base de données : c'est le cœur du SGBD qui gère toutes les opérations
de stockage et de récupération des données. Il interprète les requêtes écrites en LMD
et manipule les données en conséquence.
5. Le gestionnaire de transactions : c'est un composant qui gère les transactions dans la
base de données. Il garantit que toutes les opérations de la transaction sont exécutées
avec succès ou sont annulées en cas d'échec, assurant ainsi l'intégrité des données.
6. Le gestionnaire de sécurité : c'est un composant qui gère l'accès aux données en
contrôlant les autorisations d'accès des utilisateurs et en garantissant la confidentialité
des données.

En résumé, l'architecture logique d'un SGBD est la structure de base du système de base de
données qui comprend plusieurs composants qui travaillent ensemble pour stocker, organiser
et accéder aux données de manière efficace et sécurisée. Elle est essentielle pour garantir la
fiabilité et l'intégrité des données stockées dans le système.

Vous aimerez peut-être aussi