Vous êtes sur la page 1sur 40

Faculté des Sciences de Bizerte

Département Informatique

Cours Bases de Données


Préparé par:
Mme O. DRIDI

2019-2020
1
Plan du cours

1 Introduction aux Bases de Données (BD)

2 Le modèle Entité/Association

3 Le Modèle Relationnel

4 La Normalisation

5 L’Algèbre Relationnelle

6 Le langage SQL

2
Limites à l’utilisation des fichiers
— L’utilisation de fichiers impose à l’utilisateur de connaître :
◦ le mode d’accès (séquentielle, indexée, …)
◦ la structure physique des enregistrements
◦ et la localisation des fichiers qu’il utilise afin de pouvoir
accéder aux informations dont il a besoin.

— Pour des applications nouvelles, l’utilisateur devra


obligatoirement écrire de nouveaux programmes et il
pourra être amené à créer de nouveaux fichiers qui
contiendront peut-être des informations déjà présentes
dans d’autres fichiers.

— Toute modification de la structure des enregistrements


(ajout d’un champ par exemple) entraîne la réécriture de
tous les programmes qui manipulent ces fichiers. 3
Avant les Bases de Données
Étudiant
N°CIN Prénom Nom Ville Groupe Spécialité
07769092 Ali Ben Saleh Tunis 2SI1 Sciences de
l’Informatique
07769076 Mohamed Tounsi Bizerte 2SI3 Sciences de
l’Informatique
07654392 Saleh Ben Ahmed Jendouba 2SI1 Sciences de
l’Informatique
… … … … … ….

Redondance
de Données

Groupe
Code Spécialité Nombre d’Etudiants Année Universitaire
2SI1 Sciences de 25 2005-2006
l’Informatique
2SI2 Sciences de 30 2005-2006
l’Informatique
2BD2 Sciences de 45 2005-2006
l’Informatique
4
Avant les Bases de Données
La dépendance entre données et traitements
Les programmes contiennent des références au
format de stockage des données.
Pour modifier la structure d’une donnée (longueur
d’un enregistrement par exemple), il faut modifier
tous les programmes qui l’utilisent.

La complexité de la gestion des données


Il est difficile de gérer correctement les données
avec des dizaines ou des centaines d’applications
créées de manière anarchique.
Il est difficile de savoir quelle application utilise
quelles données et ce qu’elle en fait. 5
Les Bases de Données

à Trop d’information tue l’information

Pour éviter ces problèmes, la première idée a été de


centraliser les données pour mieux partager en les rendant
indépendantes des traitements
Distinguer différents points de vue sur les données : permettre aux
utilisateurs de « voir » les données suivants leurs besoins sans se
préoccuper de la manière dont elles sont stockées.

Base de
Données
.. .. ..
.. .. ..
.. .. ..

6
Qu’est-ce qu’une Base de Données?
Définition de Base de Données (BD)

Une Base de Données est un ensemble structuré de


données reliées entre elles et stockées de manière
cohérente sans redondance inutile de sorte qu’elles
puissent être manipulées d’une manière efficace par
plusieurs utilisateurs « concurrents ».

De Bases de Données
Système de Gestion
Application 1

Base de
Langage d’interrogation
Données
Application 2

Programmes
d’application

Application 3 8
Définition de Donnée
Une Donnée est une information représentée sous une
forme conventionnelle afin de pouvoir être traitée
automatiquement.

Une donnée peut être considérée comme étant un élément


fondamental sur lequel se bâtit un raisonnement, une
recherche, une étude ou une œuvre.

Une donnée, regroupée avec d’autres, rattachées à un


contexte et éventuellement transformées donnent
naissance à une information.

Ben Saleh 9,92 Regroupées et


Mohamed mises en contexte
Passable
Avantages des BDs

La diminution de la redondance des données et des


risques d’incohérence associés
Une meilleure indépendance des données et des
programmes d’application
Commencer par réfléchir sur les données et à les
organiser dans la base et à partir de là on ajoute toutes
les applications souhaitées.
Distinguer 2 types d’indépendance:

• L’indépendance physique: un changement concernant le


stockage physique des données est transparent pour un
utilisateur ou un programme d’application.
Exemple: Agrandir la taille d’un enregistrement n’a pas
10
d’effet sur les programmes.
Avantages des BDs
• L’indépendance logique: un changement de
l’organisation logique globale est transparent pour les
utilisateurs ou les programmes d’application existants.

On peut changer le niveau conceptuel sans remettre en


cause les schémas externes ou les programmes
d'application. L'ajout ou le retrait de nouveaux concepts
ne doit pas modifier des éléments qui n'y font pas
explicitement référence.

Exemple: L’ajout de l’information « Nationalité des


Etudiants » ne doit pas toucher aux programmes
concernant la gestion des Enseignants 11
Avantages des BDs

Une meilleure gestion des données

Partage des données: permettre d’accéder la même


information par plusieurs utilisateurs en même temps

Un accès facile aux données : grâce à la convivialité et à


la puissance des outils d’interrogation intégrés dans les
SGBDs, tout utilisateur non-spécialiste peut facilement
accéder à toutes sortes de données.

12
Les intervenants du domaine de BD
Les Utilisateurs finaux de la BD qui peuvent
consulter et/ou mettre à jour les données de la BD

Les Concepteurs et développeurs de la BD


− Les concepteurs identifient et structurent les
types de données de la base ainsi que les divers
traitements que ces données doivent subir. Leurs
compétences doivent s’étendre au-delà du domaine
strict des BD et inclure une ou des méthodes de
conception de logiciels.

−Les développeurs d’applications ont pour rôle de


déterminer les besoins utilisateurs, de spécifier et
d’implanter les transactions et les programmes
nécessaires à leur satisfaction. 13
Les intervenants du domaine de BD

Les Administrateurs de la BD sont responsables


d’une ou plusieurs BD. Ils ont la charge de délivrer
les autorisations d’accès à la BD. Ils sont
également responsables des problèmes de
performances et de sécurité de fonctionnement.

14
Historique des BDs

1950-1960
Des fichiers séquentiels

1960 – 1970
Le début des bases de données
hiérarchiques: propose une
classification arborescente des
données.

1970 – 1980
En 1970, E. F. Codd propose le
modèle relationnel

15
Historique des BDs

Fin des années 80 : Le modèle Objet


Le concept objet a été adapté aux bases de données.
à le modèle relationnel, dans sa simplicité, ne permet pas de
modéliser facilement toutes les réalités.
à un objet permet de représenter directement un élément du
monde réel.
à le concept objet est mieux adapté pour modéliser des
volumes de texte importants ou d’autres types de données
multimédias (sons, images, vidéos…).

16
Historique des BDs

Début des années 90: Le modèle Relationnel-Objet


Ø Sql, l’aide à la décision
Ø En 1992, L’idée est d’intégrer de l’objet au modèle
relationnel existant plutôt que d’utiliser l’approche objet
pure.

Fin des années 90


Croissance du volume des données, Internet, modèle
multi-tiers 17
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).

18
Système de Gestion des Bases de Données

SGBD: C’est un ensemble de services (applications


logicielles) permettant de :
Définir la structure d’une BD

De Bases de Données
Système de Gestion
Rechercher des données dans une BD
Base de
Insérer, modifier, supprimer des données Données

dans une BD
Assurer la cohérence et la confidentialité
des données
Le SGBD constitue une «couche intermédiaire» entre la
BD et les utilisateurs ou les programmes d’application.

19
Système de Gestion des Bases de Données

Un SGBD sépare la partie description des données, des


données elles mêmes. Cette description est stockée dans
un dictionnaire de données (également géré dans le
SGBD) et peut être consultée par les utilisateurs.

Les SGBDs commerciaux les plus connus sont Oracle,


Sybase, Ingres, Informix et DB2, MySQL, etc.

20
Historique des SGBDs
Jusqu’aux années 60: uniquement des SGFs

Fin des années 60: SGBDs Hiérarchiques, SGBDs Réseaux

Début des années 80: SGBDs Relationnels

1990-… : SGBD Objet (SGBDO) et interfaces Web


les données sont stockées sous forme d'objets.

21
Objectifs des SGBDs
Indépendance physique
La façon dont les données sont définies doit être
indépendante des structures de stockage utilisées.

Indépendance logique
Un même ensemble de données peut être vu
différemment par des utilisateurs différents. Toutes ces
visions personnelles des données doivent être intégrées
dans une vision globale.

Manipulation des données par des non informaticiens


Il faut pouvoir accéder aux données sans savoir
programmer ce qui signifie des langages "quasi naturels".
22
Objectifs des SGBDs

Administration centralisée des données


Des visions différentes des données se résolvent plus
facilement si les données sont administrées de façon
centralisée.

Non redondance des données

Cohérence des données


Les données sont soumises à un certain nombre de
contraintes d'intégrité qui définissent un état cohérent
de la base. Elles doivent pouvoir être exprimées
simplement et vérifiées automatiquement à chaque
manipulation des données.
23
Objectifs des SGBDs
Partageabilité des données
Permettre à plusieurs utilisateurs d'accéder aux mêmes
données au même moment. Il s'agit de pouvoir :
q permettre à deux (ou plus) utilisateurs de modifier
la même donnée en même temps

q assurer un résultat d'interrogation cohérent pour


un utilisateur consultant une table pendant qu'un
autre la modifie
Sécurité des données
Les données doivent pouvoir être protégées contre les
accès non autorisés. Pour cela, il faut pouvoir associer à
chaque utilisateur des droits d'accès aux données.
24
Objectifs des SGBDs

Résistance aux pannes


Les pannes, bien qu'étant assez rares, se produisent
quand même de temps en temps. Il faut pouvoir, lorsque
l'une d'elles arrive, récupérer une base dans un état
"sain". Ainsi, après une panne intervenant au milieu d'une
modification deux solutions sont possibles : soit
récupérer les données dans l'état dans lequel elles
étaient avant la modification, soit terminer l'opération
interrompue.

25
Architecture des SGBDs
La plupart des SGBDs suivent l’architecture standard
ANSI/SPARC qui permet d’isoler les différents niveaux
d’abstraction nécessaires pour un SGBD
1 Niveau Interne ou Physique
Décrit le modèle de stockage des données et les
fonctions d’accès

2 Niveau Conceptuel ou logique


Décrit la structure de la BD globalement. Le schéma
conceptuel est produit par une analyse de l’application à
modéliser et par intégration des différentes vues
utilisateurs. Ce schéma décrit la structure de la base
indépendamment de son implantation.
26
Architecture des SGBDs

3 Niveau Externe
Correspond aux différentes vues des utilisateurs. Chaque
schéma externe donne une vue sur le schéma conceptuel
à une classe d’utilisateurs.
Vue= sous-ensemble de données extraites d’une BD pour
servir les besoins d’un groupe d’utilisateurs

Les SGBDs doivent être capables de faire des


transformations entre chaque niveau, de manière à
transformer une requête exprimée en terme du N. externe
en requête du N. conceptuel puis du N. physique

27
Architecture des SGBDs

Vue 1 Vue 2 Vue 3 Vue n


Niveau Externe

Niveau Conceptuel

Schéma interne = Niveau Interne


représentation physique des données
sous forme de fichiers et enregistrements

28
Architecture

• Architecture centralisée
– programme d'application et SGBD sur même machine (même site)

– premiers systèmes

• Architecture du type client-serveur (client-server architecture)


– programme d'application = client
• interface (« GUI ») + traitement du domaine d ’application

– SGBD = serveur (de données « data server »)

– machines (sites) différentes

– deux couches, niveaux, strates (“two tier ”)

29
Architecture client / serveur

BD
Réseau

Programme
SGBD
d'application
Logiciel Logiciel
intermédiaire intermédiaire
Pilote de Pilote de
télécommunication télécommunication

Client Serveur

30
Architecture 3 tiers

BD

Réseau Réseau

Interface Application SGBD

Logiciel Logiciel Logiciel


intermédiaire intermédiaire intermédiaire
Pilote de Pilote de Pilote de
télécommunication télécommunication télécommunication
Client Serveur Serveur de
mince d'application données

31
Architecture mobile

Clients intelligents
mobiles

Données répliquées
et/ou personnelles Réseau sans fil

serveur

SGBD

code données

32
Historique des SGBD

33
Les défis des BDs aujourd’hui et demain

• Multiplicité des types de données: Une base de données


moderne peut contenir :
– des données multimédias,
– des données textuelles,
– des données spatiales (données GPS par exemple),
– des données historiques (plusieurs lignes par entité),
– des données semi-structurées.
• Volumes et performances.
– Une base de données peut contenir des dizaines de
milliers de tables, des milliards de lignes.
– Comment garantir l'accessibilité de ces données, leur
protection contre les incidents, des temps d'accès
satisfaisants ? 34
Les défis des BDs aujourd’hui et demain

• Maintenance et évolution
– La structure d'une base de données peut évoluer :
ajouter ou supprimer une table, une colonne, une
contrainte.
– Comment préserver les données et les
programmes utilisateurs lors de cette évolution ?
• Les données distribuées et nomades
– Une base de données peut être répartie et/ou dupliquées
sur plusieurs ordinateurs répartis géographiquement.
– Certains de ceux-ci peuvent être des appareils mobiles
(portables, smart phones).
– Comment garantir la cohérence, la protection et
l'accessibilité des données. 35
Cycle de Vie d’une BD
Le cycle de vie d’une BD correspond à l’ensemble d’étapes
par lesquelles passe une BD depuis le jour de sa création
jusqu’au jour de sa disparition. Monde
Réel
On distingue 4 étapes: Analyse
Description

Conception Conception Maintenance


Création
Utilisation Création

Maintenance
BD
Terminal Programmes

Utilisation
36
Cycle de Vie d’une BD
1 Conception
Recenser les informations nécessaires indépendamment de
toutes les contraintes matérielles, logicielles et
d’utilisation, etc.

• Contraintes d’ordre matériel: ne pas se préoccuper du


matériel sur lequel la BD sera créée

• Contraintes d’ordre logiciel: ne pas se préoccuper des


logiciels à partir desquels la BD sera accessible

• Contraintes d’utilisation : ne pas se préoccuper,


uniquement, des besoins auxquels la BD doit être capable
de pouvoir répondre. Il faut répondre aux besoins actuels
mais aussi aux besoins futurs
37
Cycle de Vie d’une BD
2 Création
Associer un ensemble de valeurs aux informations qui ont
été identifiées au cours de l’étape de conception

3 Utilisation
Recherche et extraction des données de la BD à travers des
requêtes d’interrogation et de mise à jour

4 Maintenance
üMaintenance Corrective: supprimer les données
polluantes et redondantes
üMaintenance Évolutive: faire évoluer la structure des
données 38
Applications des BD

39
Questions??

40

Vous aimerez peut-être aussi