[PDF] [PDF] Modélisation des données - CNRS

Les Systèmes de Gestion de Bases de Données (SGBD) et leur mise en œuvre ( SQL en pratique) ⇒ Voir le cours de Philippe Lamarre sur SQL, très



Previous PDF Next PDF





[PDF] Introduction à la modélisation conceptuelle de données avec UML

12 jan 2018 · Pour la modélisation des bases de données, les méthodes sont surtout utilisées pour représenter des données calculées (à l'instar des attributs 



[PDF] Modélisation des données - CNRS

Les Systèmes de Gestion de Bases de Données (SGBD) et leur mise en œuvre ( SQL en pratique) ⇒ Voir le cours de Philippe Lamarre sur SQL, très



[PDF] Modélisation des données - LaBRI

Une entité a un seul identifiant ▫ Une entité a au moins une propriété ▫ Une entité participe a au moins une association ▫ A chaque occurrence de l'entité, 



[PDF] Modéliser des données, lexemple du modèle entité - Réseau Certa

Modéliser les données d'un système logiciel, c'est construire une structure de données contraintes, représentative du réel observé Lorsqu'on analyse les 



[PDF] Comprendre Merise et la modélisation des données

la modélisation générale des données en vue de la construction d'une BDD Indépendance des données par rapport aux traitements (les bases de données



[PDF] Bases de données Cours 2 : Modélisation dune base de données

Modélisation d'une base de données Le langage UML Le mod`ele Entité - Association Bibliographie Livres : C J Date : Introduction aux bases de données



[PDF] Exercices de modélisation de Bases de Données - IRIT

Exercices de modélisation de Construire le modèle conceptuel de données charge de modéliser une base de données destinée à observer l'activité des 



[PDF] 2 – Introduction à la modélisation logique de données (MLD-R)

données dans un SGBD donné Modèle Logique de Données (MLD) : - permet de modéliser la structure selon laquelle les données seront stockées dans la 



[PDF] Modélisation et stockage des données géographiques

Dépend du type de modèle de données utilisé dans le SGBD ○ Formalismes de modélisation Modèle relationnel Modèle objet-relationnel Modèle objet 

[PDF] la modélisation de l'air

[PDF] la modélisation de la communication interne

[PDF] la modélisation de la machine asynchrone

[PDF] la modélisation de performance

[PDF] la modélisation de processus

[PDF] la modélisation de systèmes complexes

[PDF] la modélisation définition

[PDF] la modélisation des données

[PDF] la modélisation des processus

[PDF] la modélisation des systèmes complexes

[PDF] la modélisation des systèmes complexes pdf

[PDF] la modélisation dimensionnelle

[PDF] la modélisation du climat

[PDF] la modélisation et simulation numérique

[PDF] la modélisation numérique

Modélisation des données

3IF - INSA Lyon

Jean-Marc Petit

2014-2015

1/229

Sur ce cours

Volume horaire :9 cours,

5 TD,

1 examen final

Commentaires/suggestions :

jean-marc.petit@insa-lyon.fr Personnes ayant contribué à ce support (ordre alphabétique) : Marie Agier, Fabien De Marchi, Frédéric Flouvat, Hélène Jaudoin,

Farouk Toumani

Enfin et surtout : participez!

2/229

Objectifs du cours

I

Donner des bases solides pour comprendre la

gestion des données I Focus sur les bases de données relationnelles : structure, interrogation conception

Deux "gros pavés" autour des

1.

Langages

2.

Contraintes

3/229

Ce que ce cours fait peu, voire pas du tout

1. Les Systèmes de Gestion de Bases de Données (SGBD) et leur mise en oeuvre (SQL en pratique) )Voir le cours de Philippe Lamarre sur SQL, très complémentaire de ce cours 2. Présenter une métho dede conception de système d"information (SI) type MERISE, RUP ... 3. Les asp ectsfonctionnels, dynamiques et o rganisationnelsdes SI, 4/229

Références bibliographiques

I Mark Levene, Georges Loizou, "Guided tour of relational databases and beyond", 625 pages, 1999, Springer I Serge Abiteboul, Rick Hull, Victor Vianu, "Foundations of databases", 685 pages, 1995 (existe aussi en Français),

Addison-Wesley

I

Databases", Second edition, 1994, Addison-Wesley

5/229

Sommaire

Le modèle relationnel

La structure

Langages de requêtes

L"algèbre relationnelle

Le calcul relationnel

Datalog

Equivalence des langages relationnels

SQL (Structured Query Language)

Les contraintes

Les dépendances fonctionnelles et les clés

Les dépendances d"inclusion et les clés étrangères Raisonnement sur les dépendances fonctionnelles

Les relations d"Armstrong

Conception des bases de données

Approche basée sur les contraintes

Approche basée sur le modèle Entité-Association

Le modèle Entité-Association

Conception avec Entité-Association

Traduction entre modèles

Index 6/229

Outline

Le modèle relationnel

La structure

Langages de requêtes

L"algèbre relationnelle

Le calcul relationnel

Datalog

Equivalence des langages relationnels

SQL (Structured Query Language)

Les contraintes

Les dépendances fonctionnelles et les clés

Les dépendances d"inclusion et les clés étrangères Raisonnement sur les dépendances fonctionnelles

Les relations d"Armstrong

Conception des bases de données

Approche basée sur les contraintes

Approche basée sur le modèle Entité-Association

Le modèle Entité-Association

Conception avec Entité-Association

Traduction entre modèles

Index 7/229

Le modèle relationnel

1.

Structure

Donne l"organisation des données du modèle, i.e. sous forme de tableaux à deux dimensions (LDD). 2.

Langages

Il existe trois principaux langages de requêtes relationnels : I

Algèbre relationnelle

ICalcul relationnel

IDatalog Non-recursif : langage à base de règles Ce sont des langages déclaratifs qui ont donné lieu au langage

SQL utilisé en pratique.

3. Contraintes : basées sur différents t ypesde dép endances Restreindre les relations autorisées dans une base de données pour satisfaire certaines conditions logiques, appelées contraintes d"intégrité. 8/229

Outline

Le modèle relationnel

La structure

Langages de requêtes

L"algèbre relationnelle

Le calcul relationnel

Datalog

Equivalence des langages relationnels

SQL (Structured Query Language)

Les contraintes

Les dépendances fonctionnelles et les clés

Les dépendances d"inclusion et les clés étrangères Raisonnement sur les dépendances fonctionnelles

Les relations d"Armstrong

Conception des bases de données

Approche basée sur les contraintes

Approche basée sur le modèle Entité-Association

Le modèle Entité-Association

Conception avec Entité-Association

Traduction entre modèles

Index 9/229

Structure du modèle relationnel

Les données sont structurées enrelation(outableou tableau à deux dimensions) I les colonnes donnent les caractéristiques de ce que la relation représente I les lignes donnent les "individus" qui peuplent la relationExemple

Personnesnss nom prenom age

12 Aymard Serge 45

45 Fenouil Solange 35

Içi, la première ligne donne les noms aux différentes caractéristiques, appelésattributs. )Version ditenomméedu modèle relationnel

10/229

Représentation équivalente de la relation Personnes f<12, Aymard, Serge, 60>,<45, Fenouil, Solange, 55)>g fPersonnes(nss : 12, nom : Aymard, prenom : Serge, age : 60), Personnes(nss : 45, nom : Fenouil, prenom : Solange, age : 55)g fPersonnes(12, Aymard, Serge, 60), Personnes(45, Fenouil,

Solange, 55)g

)On utilisera par la suite ces différentes représentations (nommées et non-nommées), mais en attendant, on se focalise sur laversion nomméede la diapo précédente.

11/229

Attributs et domaines

SoitUun ensemble infini dénombrable de noms d"attributs ou attributs, nomméunivers.Exemple

U=fnss;nom;prenom;age;dep;adresse;activitegSoitDun ensemble infini dénombrable devaleurs constantes.

Dreprésente l"ensemble des valeurs qui peuvent être prises dans une base de données.

PourA2 U, on notedom(A)ledomainedeA, i.e. le sous

ensemble deDdans lequelApeut prendre des valeurs (dom(A) D).Exemple dom(dep) =fMath;Info;Phys;Bio;Chimieg12/229

Symbole de relation

Unsymbole de relationest un symboleRauquel on associe : I un entier natureltype(R), qui donne le nombre d"attributs de R, I une fonctionattRdéfinie def1;:::;type(R)gdansUqui associe des attributs deUàRdans un certain ordre. On noteschema(R) =fattR(1);:::;attR(type(R))gl"ensemble des attributs deR, i.e. leschémadeR. Remarque : par abus de langage, on confond parfois le symbole avec le schéma de relation.Exemple Soit Personne un symbole de relation avec type(Personne) =4et schema(Personne) =fatt(1), att(2), att(3), att(4)goù att(1) =nss, att(2) =nom, att(3) =prenom, et att(4) =age13/229

Formes normales

Caractérisation de certaines formes de schémas de relationsDefinition Un symbole de relationRest enpremière forme normale (1FN)si tous les domaines des attributs deRont des valeurs constantes et atomiques.Hypothèse relativement forte

14/229

Tuples et relations

SoitRun symbole de relation avec

schema(R) =fA1;:::;Amg;attR(i) =Ai;i=1;m UntuplesurRest un élément du produit cartésien dom(A1):::dom(Am) UnerelationsurRest un ensemble fini de tuples surR.Exemple La relation Personnes (exemple 1) est une relation sur le symbole de relation Personne. <12;Aymard;Serge;45>2Personnes15/229

Domaine actif

Ledomaine actif d"un attributA2schema(R)dansr, noté ADOM(A;r), est l"ensemble des valeurs constantes prises parA dansr, i.e.ADOM(A;r) =A(r). Ledomaine actif d"une relationr, noté ADOM(r), est défini par

ADOM(r) =S

A2schema(R)ADOM(A;r).

)à ne pas confondre avec le domaine d"un attribut

16/229

Manipulation sur un tuple

SoientRun symbole de relation avecschema(R) =fA1;:::;Amg, att R(i) =Ai(i=1;m),rune relation surR,tun tuple deret A i2schema(R). Laprojectiond"un tupletsurAi, notéet[Ai], est la ième coordonnée de t, i.e. t(i). !se généralise à plusieurs attributs SoitX=fattR(i1);:::;attR(in)g schema(R). La projection de t sur X, notéet[X], est définie part[X] =Exemple

Soit t=<12;Aymard;Serge;45>. On a :

t[nom] =t[att(2)] =t(2) = t[nom;prenom] =t[att(2);att(3)] ==<

Aymard;Serge>17/229

Symbole de base de données

Unsymbole de base de données Rest un ensemble de symboles de relation.

SoitR=fR1;:::;Rng. On a :

I schema(R) =S R i2Rschema(Ri) I Un symbole de BD est en 1FN si ses symboles de relation sont en 1FN.

18/229

Hypothèses de nommage

Hypothèse implicite du modèle relationnel

Universal Relation Schema Assumption (URSA)

: Si un attribut apparaît dans plusieurs schémas de relation, alors cet attribut représente les mêmes données.Exemple

SoitR= { Personne, Departement, Travaille } avec

schema(Personne)={ nss, nom, prenom, age }, schema(Departement)={ dep, adresse }, schema(Travaille)={ nss, dep, activite }.

19/229

Base de données

Unebase de données dest définie sur un symbole de base de données et représente un ensemble de relations. SoitR=fR1;:::;Rng.d=fr1;:::;rngest une base de données surRridéfinie surRi(i=1,n) Ledomaine actif d"une base de données d, noté ADOM(d), est l"union des domaines actifs de ses relations.

20/229

Exemple

Soitd= { Personnes,Departements,Travaillent } avec définie sur

Personne;Departement;Travaille respectivement.

Personnesnss nom prenom age

12 Aymard Serge 45

45 Fenouil Solange 35

Departementsdep adresse

Math Carnot

Info Cézeaux

Travaillentnss dep activite

12 Math Prof

45 Math MdC

45 Info MdC

21/229

Outline

Le modèle relationnel

La structure

Langages de requêtes

L"algèbre relationnelle

Le calcul relationnel

Datalog

Equivalence des langages relationnels

SQL (Structured Query Language)

Les contraintes

Les dépendances fonctionnelles et les clés

Les dépendances d"inclusion et les clés étrangères Raisonnement sur les dépendances fonctionnelles

Les relations d"Armstrong

Conception des bases de données

Approche basée sur les contraintes

Approche basée sur le modèle Entité-Association

Le modèle Entité-Association

Conception avec Entité-Association

Traduction entre modèles

Index

22/229

Langages de requêtes

Langages ditsdéclaratifspuisqu"il suffit dedécrirele résultat recherché sans spécifiercommentl"obtenir. I

Approche algébrique: Algèbre relationnelle

Très utile pour représenter les plans d"exécution des requêtes puisque unordrepour l"exécution de la requête est donnée. )dotée d"unesémantique opérationnelle I

Approche logique

I

Calcul relationnel

Orienté utilisateur car il est plus proche du langage naturel : on ne spécifie pas d"ordre. )dotée d"unesémantique déclarative

IDatalog

Langage déclaratif à base de règles, capacités d"inférence )SQL = sucre syntaxique de ces langages

Focus sur les

requêtes conjonctives

23/229

Proposée par Codd en 1970

I collection d"opérateurs algébriques I

Entrée : une ou deux relations

ISortie : une relation

I

Possibilité decompositiondes opérateurs

24/229

La projection

Soientrune relation surRetYschema(R).

LaprojectiondersurY, notéeY(r), est définie par :

Y(r) =ft[Y]jt2rg

SoitSle symbole de relation associé àY(r). On aschema(S) =Y )correspond à unecoupe verticalede la relation

25/229

La sélection (1/2)

Nécessite tout d"abord de définir la notion deformule de sélectionsurR, puis lasatisfaction d"une formule de sélection par un tuple. Définition d"une formule de sélection surRpar induction, i.e. formule simple puis formule de sélection I Uneformule simplesurRest une expression de la forme :

A=aouA=B, oùA;B2schema(R)eta2dom(A)

I

Uneformule de sélectionest

I soit une formule simple, Isoit une expression de la formeF1^F2;F1_F2;:F1ou(F1) avecF1;F2des formules de sélection. Note : on peut étendre ces formules à d"autres opérateurs binaires :

26/229

La sélection (2/2)

Soientrune relation surR,t2retFune formule de sélection sur R I tsatisfaitF, notétj=F, est défini inductivement par :

1.tj=A=asit[A] =a

2.tj=A=Bsit[A] =t[B]

3.tj=F1^F2sitj=F1ettj=F2

4.tj=F1_F2sitj=F1outj=F2

5.tj=:Fsit6j=F

6.tj= (F)sitj=F

Soientrune relation surRet F une formule de sélection surR. Lasélectiondes tuples derpar rapport àF, notéeF(r), est définie par :

F(r) =ft2rjtj=Fg

quotesdbs_dbs6.pdfusesText_12