Vous êtes sur la page 1sur 30

Cours Bases de données

Nguyen Tuan Loc


Contact
 Nguyen TuanLoc, Dr
Laboratoire LIP6-CNRS
Université Pierre et Marie Curie
bureau c569
8, rue du capitaine Scott
75015 Paris - France

 Tél: 01 44 27 87 85

 Web: http://nguyentuanloc.online.fr
 Email:Tuan-Loc.Nguyen@lip6.fr
Réferences
 Base de données – G. Gardarin - Eyrolles

 Databases complete book – H.Garcia/J.Ullman

 Cours en ligne :
http://nguyentuanloc.online.fr
Besoin du cours :
 Objectif :
 Approfondir les concepts de bases de données relationnelles.

 Maîtriser la conception et la mise en œuvre d’une base de

données relationnelles.
 Découvrir quelques SGBD relationnelles (MySQL, Access, SQL

Server)
 Acquérir une expériences dans la normalisation et l’optimisation

des performances.
 Découvrir et pratiquer les principales fonctions d’administration

d’un SGBD relationnel.


 Pre-requis
 Motivé
Contenu
 Cours 1: Introduction (1) 3,5h
 Cours 2: Introduction (2) 3,5h
 Cours 3: Modèle relationnel 3,5h
 Démo & TP (MySQL) 45’
 Cours 4: Présentation SQL 2,5h
& Algèbre relationnelle
 Démo & TP (Access) 1h
 Cours 5: Normalisation (1) 3,5h
 Cours 6: Normalisation (2)& optimisation 2h
 Démo & TP (Access,MySQL) 45’
 Contrôle continu 1,5h
 Cours 7: Présentation SQL avancé 2,5h
 Démo & TP (MySQL) 45’
 Préparer projet (30/10->30/11) 1h
 Cours 8: SGBD XML&Web Services 2h
 Démo & TP (MySQL) 1,5h
 Cours 9: BD et Web – Administration 2,5h
 Contrôle continu (soutenance de projet) 2,5h
 Examens 2h30
Contenu du cours 1
 Définition de bases de données
 Définition de SGBD
 SGBD:
 Caractéristiques
 Pourquoi
 Modèles de modélisation des données
 Objectif du SGBD
 Architecture
 deux niveaux
 trois niveaux
 répartie
Résumé
 Bases de données, définition:
 Collection de fichiers reliés par des pointeurs
multiples, bien organisés, répondre
efficacement des demandes variées
 Collection d’informations via la modélisation
du monde réel
SGBD - Qu’est-ce c’est ?
 SGBD (DBMS): Databases Management System
Système de Gestion de Bases de Données

 Définition de SGBD:
 Logiciel:
 données persistantes
 accès efficace

(Ullman)
 Ensemble de logiciels systèmes permettant de stocker
et d’interroger un ensemble de fichiers indépendants. Il
est aussi un outil permettant de modéliser et de gérer
des données (G.Gardarin)
SGBD: Caractéristiques
 Management des données persistantes
 Accéder aux larges données avec efficacité
 Supporter modèles de données
 Transaction
 Permettre de définir des données(structure,
accès, manipuler)
 Recouverte des données
 Control d’accès
Objectif du SGBD (1)
 Assurer l’indépendance des programmes aux
données (architecture 2-tiers)
 What non How
 Indépendance:
 Physique des programmes aux données
 Logique des programmes aux données
 Administration facile
 Permettre de manipuler par langages query (SQL)
1. Objectifs des SGBD (2)
 INDÉPENDANCE PROGRAMMES/DONNÉES
 Indépendance physique

 Indépendance logique

 ACCÉS PAR DES LANGAGES ASSERTIONNELS


 Recherche (le quoi et non le comment)

 Insertion (en groupes, calculées)

 Mise à jour (basée sur la recherche)

 EFFICACITÉ DES ACCÈS


 Temps de réponse
SGBD

logique SGBD

physique
données
Objectifs des SGBD (3)
 SUPPORT DE TRANSACTIONS
 Atomique (tout ou rien)

 Cohérente (respect de l'intégrité)

 PARTAGEABILITÉ ET SÉCURITE DES DONNÉES


 Simultanéité lecture/écriture maximum
 Accès transactionnels & décisionnels
 Confidentialité (authentification, droits d'accès,
cryptage)
 Restauration après pannes (journaux, sauvegardes)
Objectifs des SGBD (4)
 CONCEPTION FACILITÉE DES APPLICATIONS
 Conception visuelle des BD (diagrammes E/R, objets)

 Conception des traitements (diagrammes de flux entre

modules)
 Dictionnaire de données (objets BD, graphiques,

applicatifs)

 ADMINISTRATION SYSTÈME FACILITÉE


 Visualisation des plans d ’accès

 Élaboration de statistiques
Architecture ANSI/SPARC 78

 Externe (vues)
 description des entités et
associations vues par un
utilisateur (ou un groupe Vue Vue Vue
d’utilisateurs) externe externe externe

 Conceptuel
 description des entités et
associations du monde réel conceptuel

 Interne
 implémentation physique des

entités et associations dans les interne


fichiers
Architectures Client-Serveur
 Définition
 modèle d'architecture applicative où les programmes

sont répartis entre processus clients et serveurs


communiquant par des requêtes avec réponses.
 Une répartition hiérarchique des fonctions
 données sur le serveur partagées entre N clients

 interfaces graphiques sur la station de travail personnelle

 communication par des protocoles standardisés

 distribution des programmes applicatifs afin de minimiser

les coûts
Pourquoi le Client-serveur ?
 Évolution des besoins de l'entreprise
 Augmentation de productivité, de réactivité

 Utilisation des micros assurant flexibilité et faibles coûts

 Besoin de décisionnel et transactionnel sur gros volumes

 Évolution des technologies


 Systèmes ouverts permettant l'usage de standards

 Environnements de développement graphiques

 Explosion de la puissance des micros et des serveurs

 Solutions techniques séduisantes


 Les données partagées enfin accessibles simplement

 Mise en commun des services (règles de gestion, procédures)

 Gestion de transactions et fiabilité au niveau du serveur


Architecture 1e génération
Architecture Client-Serveur

SGBD
NT, UNIX, NOVELL
règles
SERVEUR
Données
GCOS, VMS, MVS

REQUETE
RESULTAT

Windows NT UNIX
CLIENTS
APPLICATION APPLICATIONS APPLICATIONS
Le C/S de 2e génération
 Procédure stockée Application
 Procédure accomplissant une fonction de
Outil Applicatif
service sur les données Client
 Exemple : Entrée ou sortie de stock Outil de connectabilité
 Architecture orientée services plutôt que Protocole Réseau
requêtes
Requêtes de services
 Distribution des traitements

 Peut être automatisée Résultats


 Évolution et passage à l'échelle
Protocole Réseau
 Possibilité de serveurs multiples, avec

redondances Outil de connectabilité Serveur


Procédures
 Possibilité de données privées sur les
Serveur BD Stockées
clients

base de
données
Intérêt du C/S de 2e génération
 Réduction des transferts réseaux
 non nécessité de monter les données dans le client pour les

modifier
 appel de services plus compact

 Distribution automatique des applications


 développement sur le poste de travail

 partitionnement par tirer-déposer (drag & drop)

 Simplification des outils de développement


 principe de la fenêtre unique

 modélisation uniforme des objets applicatifs

 invisibilité du modèle de données à l'extérieur du serveur


Vers le 3e génération
 Intégration du Web et du client-serveur
 navigateur à présentation standard pour le client

 possibilité de petites applications (contrôles) sur le client

 très grande portabilité (Intranet, Internet)

 Architecture à 3 strates (3-tiered)


 Base de données avec procédures stockées

 Services applicatifs partagés et objets métiers (EJB, ActiveX)

 Présentation hypertexte multimédia avec contrôles

 Support de l'hypermédia
 types de données variées et extensibles (texte, image,vidéo)

 hypertexte et navigation entre documents et applications


Concepts de Base
 Le gestionnaire de fichiers est la couche
interne d'un SGBD, souvent intégrée au
système opératoire.
Analyse syntaxique
ANALYSEUR Analyse sémantique
Gestion des schémas

META-BASE Modification de requêtes


TRADUCTEUR
Contrôle d'intégrité
Contrôle d'autorisation

Ordonnancement
OPTIMISEUR Optimisation
Ellaboration d'un plan

Gestionnaire
Exécution du plan
de fichiers EXECUTEUR Méthodes d'accès
Contrôle de concurrence
Atomicité des
transactions

BD
Structures des Disques
 Notion 1: Volume
(Disk Pack) (a) Side view

 Unité de mémoire
secondaire
amovible.
Innermost cylinder

Outermost cylinder

(b) Top view


Notion de fichier
 Notion 2: Fichier (File)
 Récipient d'information caractérisé par un nom, constituant
une mémoire secondaire idéale, permettant d'écrire des
programmes d'application indépendants des mémoires
secondaires.
 Un fichier se caractérise plus particulièrement par :
 UN NOM

 UN CREATEUR

 UNE DATE DE CREATION

 UN OU PLUSIEURS TYPES D'ARTICLE

 UN EMPLACEMENT EN MS

 UNE ORGANISATION
Les fichiers sur les volumes
 Notion 7: Label de volume (Label)
 Premier secteur d'un volume permettant d'identifier ce

volume et contenant en particulier son numéro.


 Notion 8: Descripteur de fichier (Directory entry)
 Ensemble des informations permettant de retrouver les

caractéristiques d'un fichier, contenant en particulier le


nom du fichier, sa localisation sur disque, etc…
 Notion 9: Catalogue (Directory)
 Table (ou fichier) située sur un volume et contenant les

descripteurs des fichiers du volume.


Organisation d'un volume
VOLUME n

CATALOGUE

LABEL n F1 F2 F3 F4 …

F1 F2

F3 F4
Catalogue Hiérarchisé
 Notion 10: Catalogue hiérarchisé
 Catalogue constitué d'une hiérarchie de fichiers,

chaque fichier contenant les descripteurs des fichiers


immédiatement inférieurs dans la hiérarchie.

 > PIERRE
 > PIERRE > BASES-DE-DONNEES
 > PIERRE > BASES-DE-DONNES > MODELES
Allocation de l'espace disque
 Notion 11: Région (Allocation area)
 Ensemble de zones de mémoires secondaires (pistes)

adjacentes allouées en une seule fois à un fichier.

 Notion 12: Granule d'allocation (Allocation granule)


 Unité de mémoire secondaire allouable à un fichier.
Stratégie d'allocation
 Objectifs d'une stratégie
 (1) minimiser le nombre de régions à allouer à un
fichier de sorte à réduire d'une part les déplacements
des bras des disques lors des lectures en séquentiel et
d'autre part le nombre de descripteurs de régions
associés à un fichier;

 (2) minimiser la distance qui sépare les régions


successives d'un fichier, de sorte à réduire les
déplacements de bras en amplitude.
Adressage Relatif
 Notion 13: Adresse relative (Relative address)
 Numéro d'unité d'adressage dans un fichier

(autrement dit: déplacement par rapport au début du


fichier).

| | | | | | | | | |

offset = adresse relative