Architecture Client/Serveur

Download Report

Transcript Architecture Client/Serveur

Gestion des bases de données
1
Plan
• Base de données:
– Définition
– Utilité
– SGBD
• Architecture Client/Serveur et Architecture
3 tiers.
–
–
–
–
Présentation
Avantage
Inconvénient
Fonctionnement
• Le SGBD relationnel
2
Base de données
Qu'est-ce qu'une base de données ?
• Une base de données:
son abréviation est BD, en anglais DB;
database, est une entité dans laquelle il est
possible de stocker des données de façon
structurée et avec le moins de redondance
possible.
3
Base de données
Qu'est-ce qu'une base de données ?
• Ces données doivent pouvoir être utilisées
par des programmes, par des utilisateurs
différents.
• Ainsi, la notion de base de données est
généralement couplée à celle de réseau,
afin de pouvoir mettre en commun ces
informations, d'où le nom de base.
4
Base de données
Qu'est-ce qu'une base de données ?
• On parle généralement de système
d'information pour désigner toute la
structure regroupant les moyens mis en
place pour pouvoir partager des données.
5
Base de données
Base de données (schéma)
6
Base de données
Définition (1)
• Une base de données, (BD ou BDD), est:
– un ensemble structuré,
– organisé
• permettant le stockage de grandes quantités
d'informations afin de:
• en faciliter l'exploitation:
– ajout,
– mise à jour,
– recherche de données.
7
Base de données
Définition (2)
• Une base de données
physiquement par:
se
traduit
– Un ensemble de fichiers présent sur une
mémoire de masse (bien souvent un disque).
• Certaines peuvent être accessibles via les
réseaux, on parle alors de base de données
en ligne.
8
Base de données
Utilité d'une base de données ?
• Une base de données permet de:
– mettre des données à la disposition
d'utilisateurs pour une consultation, une saisie
ou bien une mise à jour, tout en s'assurant des
droits accordés à ces derniers.
– Cela est d'autant plus utile que les données
informatiques sont de plus en plus nombreuses.
9
Base de données
Utilité d'une base de données ?
• Une base de données peut être locale, c'està-dire utilisable sur une machine par un
utilisateur, ou bien répartie, c'est-à-dire que
les informations sont stockées sur des
machines distantes et accessibles par
réseau.
• L'avantage majeur de l'utilisation de bases
de données est la possibilité de pouvoir être
accédées par plusieurs utilisateurs
simultanément.
10
Base de données
La gestion des bases de données
• Afin de pouvoir contrôler les données ainsi
que les utilisateurs, le besoin d'un système
de gestion s'est vite fait ressentir.
• La gestion de la base de données se fait
grâce à un système appelé SGBD (système
de gestion de bases de données) ou en
anglais DBMS (Database management
system).
11
Base de données
La gestion des bases de données
• Le SGBD est un ensemble de services
(applications logicielles) permettant de
gérer les bases de données, c'est-à-dire :
– permettre l'accès aux données de façon simple,
– autoriser un accès aux informations à de
multiples utilisateurs,
– manipuler les données présentes dans la base
de données (insertion, suppression,
modification)
12
Base de données
La gestion des bases de données
• Le SGBD peut se décomposer en trois soussystèmes :
le SGBD externe :
il représente l'interface
avec l'utilisateur
le SGBD interne :
il gère l'ordonnancement
des informations
le système de gestion d
fichiers :
il permet le stockage de
informations sur un
support physique
13
Base de données
Les principaux SGBD
• Les principaux systèmes de gestion de bases
de données sont les suivants :
•
•
•
•
•
•
•
•
Borland Paradox
Filemaker
IBM DB2
Ingres
Interbase
Microsoft SQL server
Microsoft Access
Microsoft FoxPro
•
•
•
•
•
•
Oracle
Sybase
MySQL
PostgreSQL
mSQL
SQL Server 11
14
Architecture Client/Serveur
Le modèle client/serveur (Présentation)
Deux parties distinctes
Client
Serveur
Analogie
Consommateur
Fournisseur
15
Architecture Client/Serveur
Le client
Se
situe dans un réseau
Utilise les services d’un ou plusieurs serveurs
Demande l’exécution d’une ou plusieurs tâches
Deux
formes
Ordinateur
Programme
16
Architecture Client/Serveur
Le client
Récupère
les « résultats » du serveur
Offre une interface utilisateur
Conviviale
Optimale
L’utilisateur se
trouve sur le client
Exemple
:
Navigateur (client web),
Filezila (client FTP),
…
17
Architecture Client/Serveur
Le Serveur
Se
trouve sur le réseau
Deux formes
Ordinateur
Programme
Met
des services à disposition du client
Chargé d’accomplir des tâches
18
Architecture Client/Serveur
Le Serveur
Rôle
Répond
aux sollicitations des clients
Exécute les tâches demandées
Peut
traiter plusieurs requêtes simultanément
Exemple
Site
:
www.hotmail.com
19
Architecture Client/Serveur
Communication client/serveur
Dialogue
entre processus 2 à 2
Résultat : échange de données
Client initie l’échange
Serveur écoute en permanence une requête
éventuelle
20
Architecture Client/Serveur
Architecture Client/Serveur
Client
Demande
Reçoit
Dialogue
Serveur
Attend
Réalise/ Exécute
Envoie
21
Architecture Client/Serveur
Architecture Client/Serveur (Avantages)
Des ressources centralisées :
• Etant donné que le serveur est au centre du réseau, il
peut gérer des ressources communes à tous les
utilisateurs, comme par exemple une base de données
centralisée, afin d'éviter les problèmes de redondance et
de contradiction
Une meilleure sécurité :
• car le nombre de points d'entrée permettant l'accès aux
données est moins important
22
Architecture Client/Serveur
Architecture Client/Serveur (Avantages)
Une administration au niveau serveur :
•Les clients ayant peu d'importance dans ce modèle, ils
ont moins besoin d'être administrés
Un réseau évolutif :
•Grâce à cette architecture il est possible de supprimer ou
rajouter des clients sans perturber le fonctionnement du
réseau et sans modification majeure
23
Architecture Client/Serveur
Architecture Client/Serveur (Inconvénients)

Un coût élevé dû à la technicité du serveur

Un maillon faible : le serveur est le seul maillon
faible du réseau client/serveur, étant donné que tout
le réseau est architecturé autour de lui !
24
Architecture Client/Serveur
Quelques modèles client/serveur
Serveur de
fichiers
Centralisation
des informations (facilité de sauvegarde)
Salles informatiques HECI
Serveur de
temps
Temps
universel
Toutes les machines se synchronisent sur l’heure de cette
machine
Serveur
FTP, Web …
25
Architecture Client/Serveur
L’architecture 3-tiers
Modèle
à 3 niveaux : 3 tiers
Le
client : le demandeur de ressources
Le
serveur d’application : fournit la ressource
Fait
Le
appel à un autre serveur
serveur secondaire
Fournit
un service au serveur d’application souvent c’est
le SGBD (serveur de gestion de la base de données)
26
Architecture Client/Serveur
Exemple : Le Web
1
serveur
 Stocke des pages web
 Attend en permanence les demandes de
clients
Client
Demande de page web
 Adresse tapée dans le navigateur =
Requête / demande de service

27
Architecture Client/Serveur
Exemple : Le Web
Serveur
Reçoit requête
 Traitement : recherche du code de la page web
 Envoie la page web

Client
Reçoit le code
 Interprète et affiche le résultat

Nature
du code reçu ?
28
Architecture Client/Serveur
Exemple : 3-Tiers basé sur le Web
Serveur
Reçoit requête
 Traitement : recherche du code de la page web
 Exécute en se connectant au SGBD par exemple
 Envoie la page web

Client
Reçoit
le code
Interprète et affiche le résultat
Nature
du code reçu ?
29
Technologie web
Exemple : 3-Tiers basé sur le Web
ActiveX
ASP
JSP
CGI
PHP
Servlet
Applet
Javascript
Internet
Client
Dialogue
Serveur
SGBD
30
Merci 
31