Chapitre 1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 22

Programme de BD1 – INF2

1. Généralités
2. Le Modelé relationnel
3. Les langages relationnels(algèbre relationnel)
4. Le langage SQL
5. Mini-Projets de mise en œuvre des concepts(Access
et MySQL)

1
Chapitre 1 : Généralités

2
1. Définitions :
➢ Une base de données, généralement appelée BD est un
ensemble structuré et organisé permettant le stockage de
grandes quantités d'informations afin d'en faciliter
l'exploitation (ajout, mise à jour, recherche de données) et
accessibles de façon sélective par plusieurs utilisateurs. La
gestion et l'accès à une base de données sont assurés par un
ensemble de programmes qui constituent le Système de
gestion de base de données (SGBD).

3
Définitions :

➢ Un SGBD (Système de Gestion de Base de Données) est un


logiciel qui prend en charge tous les aspects de la gestion de la
base de données : la structuration, le stockage, la maintenance
(accès concurrents, sauvegarde, restauration de données),
l'insertion, la mise à jour, la consultation, la suppression d'une
base de données, etc. Un SGBD héberge généralement
plusieurs bases de données, qui sont destinées à des
logiciels différents ou des thématiques différentes

4
Base de données ou simple fichier? (1)

Sans base de données

• redondance et inconsistance des données :


• infos répliquées dans plusieurs fichiers
Fichiers Applications
• importants volume des fichiers exploités
Client N° 15 Facturation • inconsistance des données mémorisées
• données stockées sous différents formats : accès
Client N° 15 Commercial
difficile
Client N° 15 Accueil
• multiplicité des mises à jour ;
• accès concurrents en mises à jour : besoin d'un
Sans Base de données
superviseur, difficile à écrire
• sécurité et confidentialité : confidentialité assurée
par les programmes (verrouillage personnalisé dans
tous les programmes)
• intégrité des données : les données doivent
respecter des contraintes lors de la saisie :
développement dans les programmes de modules
5
spécifiques
Base de données ou simple fichier? (2)
Avec base de données
• Une information n'est stockée qu'une seule
fois
• Une seule base pour toutes les applications
SGBD
• chaque application ne voit que ce qu'elle doit
Base de données
Applications
voir (contrôle par les filtres ou vues)
Facturation
• saisie unique : non redondance, moindre coût,
Client N°15
Commercial moins de support
• mise à jour unique : moins de maintenance,
Accueil
moins de risque d'incohérences
Avec Base de données • accès facile à l'information stockée : par les
programmes d'application,
• indépendance programmes/applications
• partage des données entre applications
• Évolutivité
• … 6
2. Avantages de l'utilisation des SGBD

➢ Centralisation des données : intégrité des données ;


➢ Contrôle centralisé de l'accès aux données : sécurité
accrue ;
➢ Instructions de traitement très puissantes : grande
rapidité de développement ;
➢ Indépendance vis-à-vis de la structure physique et
logique des données : maintenance facilitée ;
➢ Pour les SGBD relationnels : interrogation directe
possible par les utilisateurs et réponses rapides à des
questions non prévues par l'application.

7
3. Fonctions d’un SGBD

➢ Decrire les données qui seront stockées ;


➢ Manipuler les données (ajouter, modifier, supprimer
des informations) ;
➢ Consulter les données et traiter les informations
obtenues (sélectionner, trier, calculer, ...) ;
➢ Définir des contraintes d'intégrité sur les données
(contraintes de domaines, d'existence,...) ;
➢ Définir des protections d'accès (mots de passe,
autorisations,...) ;
➢ Résoudre les problèmes d'accès multiples aux
données (blocages, inter blocages) ;
➢ Prévoir des procédures de reprise en cas d'incident
(sauvegardes, journaux,...). 8
4. Architecture des SGBD(1)
✓ Architecture fonctionnelle

9
Architecture des SGBD(2)
✓ Architecture fonctionnelle
Schéma interne(Niveau physique): (le système de gestion de fichier) : organisation et
stockage physique des données. C’est la description du stockage des données au
niveau des unités de stockage, des fichiers,... On appelle cette description le schéma
interne

Schéma conceptuel(Niveau conceptuel): Structure globale des données de la base.


Gère les données stockées dans les fichiers, les liens existants entre ces données. C’est la
description de la structure de toutes les données qui existent dans la base,
description de leurs propriétés (relations qui existent entre elles) c'est-à-dire de leur
sémantique inhérente, sans soucis d'implémentation physique ni de la façon dont
chaque groupe de travail voudra s'en servir. On appelle cette description le schéma
conceptuel.

Schéma externe(Niveau Externe) : Définit la mise en forme et la présentation des


données aux programmes et aux utilisateurs. C’est la description pour chaque utilisateur
de sa perception des données. On appelle cette description le schéma externe ou
vue.

10
Architecture des SGBD(3)
✓ Architecture organisationnelle

o Les architectures centralisées

11
Architecture des SGBD(4)
✓ Architecture organisationnelle

o Les architectures
client-serveur

12
Architecture des SGBD(5)
✓ Architecture organisationnelle

o Les architectures Trois tiers

13
5. Propriétés des SGBDs
➢ Indépendance physique : La modification de la manière
dont sont stockées les bases de données n’entraine pas
nécessairement celle des applications
➢ Indépendance logique : réciproque du point 1
➢Manipulabilité : manipulation des données par des
profanes
➢Rapidité des accès : réponses rapides aux requêtes
➢Limiter les redondances :
➢Vérification de l’intégrité : cohérence des données.
➢Partageabilité des données : Accès simultané aux
données par plusieurs utilisateurs.
➢Sécurité des données : Gestion des droits d’accès aux
données reprise sur panne(mécanismes de sauvegardes).
14
6. Types d'utilisateurs d’une BD
Administrateur : Contrôle et gestion de la base de
données(droits et privilèges, sauvegardes, reprise après
les pannes…)

Programmeur : Utilise la base de données pour construire


ses applications. Il a droit de créer de nouvelles tables et les structures
associées (vue, index, cluster, ). Il définit avec l administrateur de la base
les droits qui seront accordés aux utilisateurs des applications qu’il
développe.

Utilisateur final : Accède aux données par


l'intermédiaire d'applications, en interrogeant
directement les tables ou vues sur lesquelles
l'administrateur lui a accordé des droits. 15
7. Les modèles de données(1)
Première génération
SGBD hiérarchique (années 60):
▪ Structure arborescente
▪ Utilisation des pointeurs
▪ Classification hiérarchique des données
▪ Chaque enregistrement a un et un seul possesseur.

SGBD réseau (années 70):


▪ Structure sous forme de graphe
▪ Utilisation des pointeurs pour déterminer le chemin d'accès aux
données
▪ Possibilité d’établir des liaisons de type n-n,
▪ les liens entre objets pouvant exister sans restriction.

Pour les SGBD hiérarchiques et réseaux, les programmes

▪ ne sont pas indépendants de la structure logique de la base


▪ doivent indiquer le chemin d'accès aux données
▪ utilisent un langage complexe pour travailler avec les données 16
Deuxième génération

SGBD relationnel : (fin des années 60):


▪ Fondée sur la théorie mathématique des relations
▪ Représentation des données sous forme de tables(lignes/colonnes)
▪ Plus de pointeurs qui figent la structure de la base
▪ Langage puissant et simple d'emploi
▪ SQL est un standard parmi ces langages
▪ Dominent le marché des SGBD(près de 80% en entreprise)

Troisième génération

SGBD objet :
▪ Enregistrent des données sous forme d'objets ;
▪ Supportent la notion d'héritage entre classes d'objets ;
▪ Très simple de rendre les objets persistants ;
▪ Meilleures performances pour la gestion d'objets complexes (les pointeurs
remplacent les jointures pour les structures hiérarchiques) ;
▪ Beaucoup d'avantages sur le relationnel…

Mais… 17
▪ manque de normalisation et de standard
8. Conception d'une base de données(1)
1. Analyse de la situation
existante et des besoins ;
Monde réel 2. Création d'une série de
1.* Analyse modèles conceptuels
Spécifications Schémas
(canonique et vues externes)
de la BD Externes
qui permettent de représenter
2.* Modélisation 2.* Vues externes
tous les aspects importants du
Schéma Schémas
conceptuel
3.* Traduction Logique problème ;
4.* Implémentation 3. Traduction des modèles
Schéma conceptuels en modèle logique
Physique
et optimisation (normalisation)
5.* Stockage de ce modèle logique ;
4. Implémentation d'une base de
SGBD
données dans un SGBD, à partir
du modèle logique.
18
8. Conception d'une base de données(2)

Modèles sémantiques orientés


conception(E/A, Merise,
UML…)

Modèles de BD(hierarchique,
réseau, relationnel…

NB : Les modèles de BD sont souvent trop limités pour pouvoir


représenter directement le monde réel
19
9. Langage de bases de données
Fonctions

▪ Définition des données (Data Definition


Language-DDL) :
– schéma conceptuel
– schémas externes (vues)
– chemins d’accès aux données.

▪ Manipulation des données (Data Manipulation


Language-DML) :
– création, modification et suppression
– mises en place d’index pour améliorer les temps
de réponse
– interrogation
– gestion des droits d’accès
–…

20
10. Types des langages pour les BD

▪ Langages textuels interactifs: SQL

▪ Interfaces graphiques (Access)

▪ Développement d‘applications: commandes (SQL) imbriquées

• dans un langage de programmation conventionnel hôte

(Pascal Java, C...) ou

• dans un langage ad hoc ( MS Transact SQL, Oracle

PL/SQL)

21
11. Exemple de SGBDs
type de
Nom Année Editeur Caractéristiques Licence
logiciel
pour entreprises, groupes de travail,
DB2 1983 IBM serveur propriétaire
particuliers
Microsoft relationnel, pour particuliers et groupes Logiciel
1992 Microsoft propriétaire
Access de travail applicatif
Microsoft SQL entreprises, groupes de travail,
1989 Microsoft48 serveur propriétaire
Server particuliers, relationnel, distribué
centralisé, embarqué, distribué, pour
Oracle Corporation
MySQL 1995 entreprises, groupes de travail et serveur GPL
et MySQL AB
particuliers
OpenOffice.org Logiciel
2002 Oracle Corporation LGPL
Base applicatif
entreprises, groupes de travail,
Oracle Database 1979 Oracle Corporation particuliers, relationnel, spatial, serveur propriétaire
distribué
Michael
PostgreSQL 1985 serveur BSD
Stonebraker

22

Vous aimerez peut-être aussi