Approche BD

15
1 L’approche Bases de données Cours: BD. Avancées Année: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algérie) I- : Mise à niveau 1 Cours: BDD. Année: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Données 1 Notions générales Définition Une BD un ensemble d’informations structurées non redondant permettant la mise en place d’une série d’applications informatiques destinées à une grande variété d’utilisateurs. Exemple: Dans une entreprise, les informations concernant son fonctionnement : - Employés - Produits Fabriqués - Moyens matériels (Machines, Véhicules, Magasins, etc.) peuvent être rassemblées sous forme de BD et mises à la disposition de nombreux utilisateurs (cadres de l’entreprise, gestionnaires, opérateurs, clients, fournisseurs, etc.). Cours: BD. Avancées Année: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algérie) I- : Mise à niveau 2 Cours: BDD. Année: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Données 2

description

cours BD

Transcript of Approche BD

  • 1

    Lapproche Bases de donnes

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 1 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 1

    Notions gnrales

    Dfinition

    Une BD un ensemble dinformations structures non redondant permettant la mise en place dune srie dapplications informatiques destines une grande varit dutilisateurs.

    Exemple:

    Dans une entreprise, les informations concernant son fonctionnement :

    - Employs

    - Produits Fabriqus

    - Moyens matriels (Machines, Vhicules, Magasins, etc.)

    peuvent tre rassembles sous forme de BD et mises la disposition de nombreux utilisateurs (cadres de lentreprise, gestionnaires, oprateurs, clients, fournisseurs, etc.).

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 2 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 2

  • 2

    Objectifs dune base de donnes

    Parmi les principaux objectifs viss par une base de donnes :

    Permettre le Partage de linformation

    Une BD permet le partage dun ensemble unique dinformations par plusieurs utilisateurs.

    il faut que cette mise en commun soit faite :

    1. tout en prservant la vue particulire que chaque utilisateur peut avoir des informations,

    2. et en sassurant que la simultanit des traitements qui peuvent tre effectus ne risque pas daltrer lintgrit de la base de donnes.

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 3 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 3

    Organiser les donnes indpendamment des programmes :

    Afin de construire un ensemble dinformations structures non redondant et qui soit partageable par plusieurs utilisateurs :

    il est ncessaire de faire abstraction des traitements particuliers de tel ou tel utilisateur (ou programme)

    organiser les informations en fonction de leur nature et des liens rels qui existent entre elles et non en fonction des traitements.

    Cest de cette manire quon arrivera garantir le maximum dindpendance entre donnes et programmes.

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 4 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 4

  • 3

    Avantages de lapproche B.D.

    Contrairement aux approches classiques, lapproche BD est le reflet dune volution dans la gestion de lentreprise.

    Elle rend possible :

    La centralisation de linformation : linformation nest plus parpille dans diffrents fichiers

    diffrents endroits

    Lintgration :

    tout ce qui se fait dans un service est visible par dautres services

    La diffusion de linformation archive :

    si linformation est disponible un seul endroit, elle est facile diffuser

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 5 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 5

    Ceci a pour avantages :

    1- Amliorer la cohrence de linformation :

    une seule valeur pour une mme information

    2- Rduire les redondances :

    une mme information nest stocke si possible quune seule fois

    3- Rduire les efforts de saisie et de mise jour :

    consquence de 2 . une information qui doit tre stocke une

    seule fois ne sera saisie quune seule fois. De mme que sa mise jour ne se fera quune seule fois

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 6 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 6

  • 4

    Dmarche de conception dune BD

    la conception dune base de donnes doit se faire en utilisant une mthode de conception qui dfinit la dmarche suivre.

    Plusieurs mthodes de conception existent

    Exemple :

    la mthode MERISE base sur le modle E/R de Chen

    Pour certaines mthodes, on dispose mme dun outil logiciel daide la conception appel aussi un Atelier de Gnie Logiciel (AGL)

    un ensemble de logiciels permettant lautomatisation dun certain

    nombre de tches lors des diffrentes phases du processus de conception :

    gnration automatique de la structure de la B.D., de programmes daccs et de manipulation, etc..

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 7 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 7

    Quelle que soit la mthode utilise, la conception dune base de donnes passe par un processus de modlisation :

    Modliser une certaine partie du monde rel afin de caractriser les entits quon manipule (tudiants, Comptes Bancaires, Ouvrages, etc.)

    Caractriser les attributs de ces entits en fonctions des problmes que doit rsoudre lexistence de la B.D. :

    Gestion de la scolarit, Gestion de Prt douvrages dans une bibliothque, etc.

    Exemple : Pour un tudiant on aura besoin dun attribut relatif au rsultat

    dans un module dans le cas dune Gestion de la scolarit, alors que ce type dattribut ne sera pas ncessaire ? dans le cas dune application de Gestion de Prt

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 8 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 8

  • 5

    Le cas le plus gnral est celui o la B.D. est partage par plusieurs utilisateurs.

    Ces utilisateurs nont pas tous la mme vue des donnes de la base,

    Ils nont pas tous voir la base dans sa totalit Chaque utilisateur nest concern que par une partie de celle-ci.

    Exemple :

    Dans une entreprise lensemble des informations sur les :

    dpartements, les employs, les produits, le matriel, etc.

    peuvent tre rassembles sous forme dune B.D. et il est bien rare quun utilisateur de cette base ait besoin de toutes ces informations la fois.

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 9 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 9

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 10

    3 Programmes dapplications 2 Programmes dapplications 1 Programme dapplication

    Application A Application B Application C

    Description de la B.D.

    Monde Rel

    Modlisation

    S.Sociale Ventes

    Gestion de Stock

    Achats

    Paye Comptabilit

    Processus de Modlisation dune B.D.

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 10

  • 6

    Remarque

    Il serait plus juste de remplacer le terme Utilisateur par celui dApplication

    On dfinit en gnral une B.D. afin de mettre en place une srie dapplications ayant chacune ses programmes et ses propres utilisateurs exploitant le mme sous-ensemble de donnes.

    Exemple :

    Dans une B.D. de Gestion Universitaire, on peut mettre en place une application de gestion de Prts qui sera compose dun ensemble de programmes et dont les utilisateurs seront ceux concerns par les traitements raliss par ces programmes (Secrtaire, Documentaliste, Archiviste, etc.).

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 11 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 11

    Problmes poss par la Centralisation

    de linformation sous forme de B.D.

    la centralisation de linformation sous forme dune B.D. unique pose un certain nombre de problmes lis directement

    lintgrit et la scurit de ces informations.

    Parmi ces problmes, on peut numrer les suivants :

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 12 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 12

  • 7

    Nature et type de linformation

    Lors de la mise en place dune B.D., lutilisateur dcrit les proprits que doivent vrifier ses donnes et qui doivent tre prserves tout au long de lexistence de la base de donnes.

    Ces proprits peuvent se situer diffrents niveaux :

    Appartenance dune donne un ensemble de valeurs

    Ex : lge dun employ est un entier positif compris entre 0 et 150 0< ge < 150

    Dclaration de proprits invariantes au cours du temps

    Ex : Un enseignant une heure Donne ne peut se trouver que dans une seule salle

    Relation dordre total respecter lors du stockage des donnes

    Ex : Les employs doivent tre stocks dans la B.D. par ordre croissant de leur numro ou par ordre alphabtique sur leur nom

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 13 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 13

    Sret physique, sret de fonctionnement et point de reprise

    Il sagit de protger linformation contre un mauvais fonctionnement soit de la machine, soit du systme (logiciel) qui gr la base de donnes.

    Dans le premier cas, on peut dlimiter les enregistrements qui ont t altrs ou perturbs

    Dans le second cas le problme est beaucoup plus complexe. Une des solutions en usage consiste prendre intervalles

    rguliers des copies de la B.D. et enregistrer lensemble des transactions (oprations) effectues sur la base.

    Ceci permettra en cas dincident de rgnrer une copie consistante (i.e. sans dfauts) de la base.

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 14 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 14

  • 8

    Partage de linformation

    Lorsque deux programmes P1 et P2 veulent se partager la mme donne A, il peut y avoir perte dintgrit.

    Exemple :

    P1 accde A et la transfre dans son buffer propre

    P2 accde A et la transfre dans son buffer propre

    P1 modifie A dans son buffer puis la recopie dans la B.D.

    P2 modifie A dans son buffer puis la recopie dans la B.D.

    venant ainsi craser les modifications faites par P1.

    La solution ce problme serait par exemple celle de lexclusion mutuelle qui est une technique utilise dans les systmes dexploitation.

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 15 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 15

    Problme des donnes confidentielles

    Il sagit de protger les donnes contre des utilisateurs indiscrets

    On dispose en gnral pour cela de procdures slectionnant les accs la base de donnes.

    Lorsquun utilisateur veut faire un accs, on distingue deux phases :

    1. La phase didentification :

    a pour but didentifier lutilisateur qui veut se connecter la base de donnes. Ceci est possible grce un mot de passe, une carte spciale, etc.

    2. La phase dautorisation : aprs identification de lutilisateur, permet de dterminer

    ce que peut faire cet utilisateur sur telle ou telle donnes (consulter seulement, consulter et mettre jour, etc.)

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 16 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 16

  • 9

    Niveaux de description dune Base de Donnes

    La description dune base de donnes peut se faire diffrents

    niveaux, suivant que lon regarde plus du ct de lutilisateur que du

    ct du stockage des donnes sur les supports physiques.

    On distingue communment trois (3) niveaux de description

    dune B.D.

    1- niveau conceptuel

    2- niveau externe

    3- niveau interne

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 17 Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 17

    Niveaux de description dune Base de Donnes

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 18 Niveau Externe Niveau Conceptuel Niveau Interne

    Groupe

    Utilisateurs 1

    Groupe

    Utilisateurs 2

    Groupe

    Utilisateurs 3 Schma Externe 3

    Schma Externe 2

    Schma Externe 1

    Schma Conceptuel

    B.D. Physique

    Schma Physique

    Monde Rel

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 18

  • 10

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 19

    Le schma conceptuel est la partie fondamentale dans larchitecture dune base de donnes.

    Il a pour but de dcrire en termes abstraits mais fidles une certaine ralit dune organisation et de ses processus de gestion qui ont ncessit la mise en place dune B.D.

    Le passage du monde rel au schma conceptuel correspond un processus de modlisation :

    les objets du monde rel ayant les mmes caractristiques sont classs en catgories et dsigns par des noms (Etudiants, Vhicules, etc..

    Dans le processus de modlisation, le concepteur de la B.D. spcifie le schma conceptuel en utilisant les possibilits offertes par un modle de donnes.

    Le Niveau conceptuel

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 19

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 20

    Un modle de donnes est un outil formel destin dcrire la ralit de manire indpendante de tout traitement informatique.

    Un modle de donnes doit permettre de regrouper les objets du monde rel auxquels on sintresse en classes dobjets de nature identique.

    Exemple :

    Dans une application de gestion universitaire, on pourra regrouper les tudiants dans une classe dobjets quon appellera ETUDIANTS et les modules dans une autre classe dobjets quon appellera MODULES.

    Par la suite on ne fera rfrence aux objets de ces classes que par lintermdiaire de ces noms.

    Dfinition dun modle de donnes

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 20

  • 11

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 21

    Un modle de donnes doit aussi permettre de dcrire les liaisons ou associations qui peuvent exister entre les classes dobjets.

    Exemple :

    Dans une application de gestion universitaire, linscription est un phnomne qui associe un objet tudiant appartenant la classe ETUDIANTS un ou plusieurs objets modules appartenant la classe MODULES.

    On pourra dans ce cas crer une association quon nommera INSCRIPTION entre la classe ETUDIANTS et la classe MODULES afin de modliser cette ralit.

    Un schma conceptuel est donc le rsultat dun processus de modlisation fait en respectant les possibilits dun modle de donnes.

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 21

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 22

    Classification des modles

    Il existe trois grandes classes de modles de

    donnes qui se distinguent par la nature des

    associations quils permettent de modliser.

    Ce sont :

    Les modles hirarchiques

    Les modles rseaux

    Les modles relationnels

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 22

  • 12

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 23

    A laide du modle hirarchique, le schma conceptuel peut tre vu comme un graphe arborescent dont les nuds correspondent aux classes dobjets (entits) et les arcs entre deux nuds aux liaisons ou associations entre les entits.

    Un tel graphe possde donc un nud racine (sur lequel narrive aucun arc !) et les autres nuds sont des fils, petit-fils, etc., de cette racine.

    Avec le modle hirarchique, le nombre de flches pouvant arriver sur un nud est donc gal un (sauf pour le nud racine).

    Le modle hirarchique

    ETUDIANTS

    MODULES OUVRAGES

    INSCRIPTIONS PRET_ETUDIANT

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 23

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 24

    A laide de ce modle, le schma conceptuel peut tre vu comme un graphe gnral o les nuds correspondent aux classes dobjets et les arcs entre deux nuds aux associations.

    A la diffrence du modle hirarchique on peut avoir ici plusieurs arcs qui arrivent sur le mme nud.

    De mme que la notion de nud racine nexiste pas avec le modle rseau.

    Le modle rseau

    ETUDIANTS

    MODULES OUVRAGES

    ENSEIGNANTS

    ENSEIGNE

    PRET_ENSEIGNANTS INSCRIPTIONS

    PRET_ETUDIANT

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 24

  • 13

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 25

    Ce modle est fond sur la thorie mathmatiques des relations.

    Le schma conceptuel peut tre vu comme un ensemble de tables

    (ou relations) n colonnes, n dsignant le degr de la relation.

    Avec le modle relationnel, une table sert reprsenter aussi bien une classes dobjets quune association entre des classes dobjets.

    Ainsi, la distinction entre nud et arc comme dans les autres modles nest pas ncessaire avec le modle relationnel.

    Chaque lment dune table est appel un n-uplet.

    Le modle relationnel

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 25

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 26

    Par exemple la table INSCRIPTIONS dcrit lassociation entre la classe dobjets ETUDIANTS et la classe MODULES et qui permet de modliser le fait quun tudiant peut sinscrire 0, 1 ou plusieurs modules.

    Code Titre

    Num Code

    Num Code

    Num Code

    Relation : Module

    Num Nom Prn

    Num Code Note

    Num Code Note

    Num Code Note

    Relation : Etudiants

    Num Code Note

    Num Code Note

    Num Code Note

    Num Code Note

    Relation : Inscriptions

    1 n-uplet

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 26

  • 14

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 27

    Ce niveau correspond la vision de tout ou partie du schma conceptuel par un groupe dutilisateurs concern par une application.

    Il sagit de dcrire laide dun schma externe ou Vue la faon dont seront perues les donnes par un programme dapplication.

    Exemple :

    Dans une base de donnes de gestion universitaire, un groupe

    dutilisateurs concern par les INSCRIPTIONS des tudiants

    na pas besoin davoir une vision globale de la base et peut se limiter la partie qui englobe les informations relatives aux tudiants et aux Modules.

    Le Niveau Externe

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 27

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 28

    Un schma externe peut donc tre considr comme un sous schma du schma conceptuel.

    Grce cette notion de schma externe, chaque groupe dutilisateurs peroit les donnes sa faon

    Par exemple, une donne vue comme donne numrique par un groupe peut tre vue comme une chane de caractres par un autre (cas dune date par exemple).

    Un groupe peut ne pas voir certaines caractristiques (attributs) dune entit (ex : note obtenue dans un module) qui seront par contre visibles par un autre groupe (ou application).

    Le Niveau Externe

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 28

  • 15

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 29

    Ce niveau a pour but de spcifier comment les donnes sont stockes sur les supports physiques.

    Cette spcification est faite par le biais dun schma physique ou schma de stockage.

    Ce schma permettra par exemple de :

    Dcrire la structure des fichiers qui constituent la base de donnes (nom dun fichier, organisation, adresse sur le support, etc.)

    Dfinir les mthodes dimplantation (fichier plat, invers, etc.)

    Prciser les chemins daccs aux enregistrements (index, chanage, calcul dadresse, etc.)

    Le Niveau Interne

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 29

    Cours: BD. Avances Anne: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algrie) I- : Mise niveau 30

    Il faut noter que tous ces aspects ne doivent pas affecter les applications sauf sur le plan des performances daccs la base

    Afin de garantir lun des objectifs viss par une base de donnes savoir : lindpendance entre les donnes et les programmes.

    Le souci du schma physique est donc de pouvoir changer lorganisation physique des donnes sans modifier le schma conceptuel ni les programmes dapplication.

    Par exemple, pour augmenter les performances daccs la base de donnes, on peut tre amen :

    Changer lorganisation dun fichier (Passer par exemple dune organisation initialement squentielle une organisation squentielle indexe ou directe).

    Dplacer physiquement le fichier vers une autre adresse sur le support

    Modifier les chemins daccs aux enregistrements (changer dindex, ajouter dautres indexes, etc.).

    Cours: BDD. Anne: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) Lapproche Base de Donnes 30