Sarah Cohen-Boulakia, Bases de données
1
Cours de Bases de Données
Polytech Paris-Sud
Sarah Cohen-Boulakia
LRI, Bât 650, Université Paris-Sud, Orsay
cohen @ lri . fr
01 69 15 32 16
Sarah Cohen-Boulakia, Bases de données
2
Chapitre 1
Introduction
aux
Bases de Données
Sarah Cohen-Boulakia, Bases de données
3
Chapitre 1 : Quelques questions…
Qu’est-ce qu’une base de données ?
Pourquoi ne pas plutôt utiliser un système de
fichiers ?
A quoi sert un système de gestion de bases
de données (SGBD) ?
Sarah Cohen-Boulakia, Bases de données
4
Les Bases de données sont
omniprésentes
Applications de gestion
Banque - Finance - Assurance
Gestion du personnel / client d’une entreprise
Gestion des stocks
Système d’information d’une entreprise / labo
Applications transactionnelles
Gestion de réservations
Transports passagers (train, avion, location, ...),
Hôtels, Spectacles
Expérimentations scientifiques
Consultations/modifications très fréquentes
Sarah Cohen-Boulakia, Bases de données
5
Gestion des réservations
de billets de trains
Réservation
Num reservation
Nom client
Adresse client
numéro trajet
• date
Départ
- gare
- heure
• Arrivée
- gare
- heure
Trajet
numéro trajet
gare départ
heure départ
destination finale
heure d’arrivée
Étapes,
Wagons,
Trains…
Quelques Notes…
Sarah Cohen-Boulakia, Bases de données
6
Utilisation de systèmes de fichiers
Problèmes
• Redondances
• Incohérences
Maintenance
Structure des
données dans les
programmes !
Accès aux
données
Performances
Système de
réservation
dans les gares
Système de
réservation
en ligne (voyageSNIF)
Système de
réservation
en ligne (Axpadia)
Système
fichiers 1
Train 345
Système
fichiers 2
Train 345
Système
fichiers 3
Train 345
Sarah Cohen-Boulakia, Bases de données
7
L’utilisation d’une base de
données et un système de
gestion de base de données est
un choix guidé par des besoins à
différents niveaux
Sarah Cohen-Boulakia, Bases de données
8
Description
Décrire le données de l’application (trains,
trajets et réservations) sans faire référence à
une solution informatique particulière
Modélisation conceptuelle
Élaborer une description équivalente pour le
stockage des données
Modélisation logique
Langage de description de données
Sarah Cohen-Boulakia, Bases de données
9
Création et modification des
données
Créer la base de données initiale avec les
données représentant le réseau SNIF
langage permettant l’insertion de données
Créer au fur et à mesure les données sur les
réservations
Pouvoir modifier (et éventuellement supprimer)
toute donnée déjà rentrée
langage de manipulation de données
(insertion, modification, suppression)
Sarah Cohen-Boulakia, Bases de données
10
Interrogation
Répondre à toute demande d’information portant
sur les données contenues dans la base
Nicolas Bazin a-t-il une réservation pour aujourd’hui ? Si
oui, donner les infos sur cette réservation.
Quels sont les horaires des trains partant de Bordeaux et
allant à Paris entre 9h et 10h le dimanche ?
Donner toutes les destinations au départ de Bordeaux
sans arrêts intermédiaires
Langage de requête (langage d’interrogation)
Sarah Cohen-Boulakia, Bases de données
11
Exactitude et Cohérence
Exprimer des contraintes sur les données
Chaque place de train est occupée par au plus un client
Les arrêts d’un train sont numérotés de façon continue
La date de réservation pour un train doit être à un jour de
circulation de ce train
L’heure de départ d’une gare doit être postérieure à
l’heure d’arrivée dans cette gare
L’heure d’arrivée à un arrêt doit être postérieure à l’heure
de départ de l’arrêt précédent
Langage d’expression de contraintes
d’intégrité
Sarah Cohen-Boulakia, Bases de données
12
Fiabilité et contrôle de concurrence
Pas de perte d’information due à un
disfonctionnement matériel quelconque
erreur de programmation, panne système, panne de
physique, coupure de courant, …
Garantie de fiabilité, reprise sur panne
Pas de perte d’information due à l’action d’ un
utilisateur
enregistrement de deux réservations (sur 2 clients
différents) pour une même place dans un même train
Garantie de contrôle de concurrence
Sarah Cohen-Boulakia, Bases de données
13
Confidentialité et Efficacité
Information protégée (utilisateurs autorisés) en
lecture/écriture
Les clients ne doivent pas pouvoir modifier les
numéros des trains
Garantie de confidentialité
Temps de réponse conforme aux besoins
en interactif : pas plus de 2 secondes
en programmation : assumer la charge de travail
attendue (nombre de transactions par jour)
Optimisation
Attention : répartition / duplication des données
Garantie d’efficacité
Sarah Cohen-Boulakia, Bases de données
14
BD et SGBD
Base de données (BD)
ensemble structuré de données stockées et accessibles par
plusieurs utilisateurs
Système de Gestion de Base de Données (SGBD)
Logiciel système pour interagir avec une BD. Fonctions :
Gestion du stockage en mémoire secondaire
Accès efficaces aux données, transferts mémoires
centrale - secondaire
• Persistance
Résistance aux pannes (logicielles et matérielles)
Confidentialité (sécurité)
Cohérence – Intégrité (fiabilité)
Partage des données – Concurrence (sécurité)
• Interface
Sarah Cohen-Boulakia, Bases de données
15
BD et SGBD
Base de données (BD)
ensemble structuré de données stockées et accessibles par
plusieurs utilisateurs
Système de Gestion de Base de Données (SGBD)
logiciel pour interagir avec une BD. Fonctions :
Gestion du stockage en mémoire secondaire
Accès efficaces aux données, transferts mémoires
centrale - secondaire
• Persistance
Résistance aux pannes (logicielles et matérielles)
Confidentialité (sécurité)
Cohérence – Intégrité (fiabilité)
Partage des données – Concurrence (sécurité)
• Interface
Oracle, Postgres, mySQL,
DB2, SQLServeur
sont des SGBDs
Sarah Cohen-Boulakia, Bases de données
16
Avec une base de données
Avantages
Chaque
information n'est
stockée qu'une
seule fois
Une seule base
pour toutes les
applications
Et chaque
application ne voit
que ce qu'elle doit
voir (contrôle par
les filtres ou vues)
Système de
réservation
dans les gares
Système de
réservation
en ligne (voyageSNIF)
Système de
réservation
en ligne (Axpadia)
Train 345
Schéma
Manipulation
Sarah Cohen-Boulakia, Bases de données
17
Principe 1 : Instance et schéma
On distingue toujours le schéma (récipient) de
l’instance (contenu)
Schéma = description centralisée des données
la description des données est une donnée stockée +
modifiable + interrogeable
Train(no: entier, gare départ : chaîne de caractères,
heure départ : Heure…) (= Table en colonnes)
Instance = donnée
les données sont organisées en fonction du schéma
(Train n° 345, Bordeaux, 15h00) (= ligne)
Sarah Cohen-Boulakia, Bases de données
18
Principe 2 : Trois Niveaux
d’Abstraction
Niveau externe (vues)
description et manipulation des données dédiées à un
groupe d’utilisateurs, modélisation des visions de la
base par les utilisateurs
Niveau logique ou conceptuel
description et manipulation abstraites des données
structure globale des données qui intègre les
différentes visions externes, sans se soucier des
contraintes (performance…) liées à l’implantation
Niveau physique (interne)
organisation et stockage des données en mémoire
secondaire, façon dont la base est implantée sur la
machine
Sarah Cohen-Boulakia, Bases de données
19
Avantages de la séparation des 3
niveaux
Limitation des modifications liées
aux changements de matériel, de système
d’exploitation ou des logiciels utilisés
Passage à un serveur plus puissant, changement de
SGBD (Oracle, Postgres, mySQL…)
La vision de chaque utilisateur est
indépendante des visions des autres
utilisateurs
pas impactées par les modifications du schéma
conceptuel qui ne le concernent pas
Changement de l’affectation des wagons par train
pas d’impact sur l’interface de consultation
Sarah Cohen-Boulakia, Bases de données
20
3 types d'utilisateurs
• L'administrateur de la base est chargé
du contrôle de la BD, en particulier, permettre l'accès aux données /
applications / individus qui y ont droit
de conserver de bonnes performances d'accès à ces données
de faire des sauvegardes / procédures de reprise sur pannes
Le programmeur
écrit des applications qui utilisent la base de données
crée les tables et les structures associées (vues, index,...) utilisées
par ses applications
• L'utilisateur final
n'a accès qu'aux données qui lui sont utiles
par l'intermédiaire d'applications
en interrogeant directement les tables ou vues sur lesquelles
l'administrateur lui a accordé des droits
1 / 7 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !