1 / 20

Algèbre relationnelle

Algèbre relationnelle. La partie structurelle : le modèle relationnel. Produit cartésien de 2 ensembles : Relation : Sous-ensemble du produit cartésien d’une liste de domaines Une relation est caractérisée par un nom Représentation commode : table à 2 dimensions

keely
Download Presentation

Algèbre relationnelle

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algèbre relationnelle Maria Berger - Maîtrise d'AES 2001-2002

  2. La partie structurelle : le modèle relationnel • Produit cartésien de 2 ensembles : • Relation : • Sous-ensemble du produit cartésien d’une liste de domaines • Une relation est caractérisée par un nom • Représentation commode : table à 2 dimensions • Exemple : la relation Coureur est un sous-ensemble du produit cartésien : numéro X nom X CodeEquipe X CodePays Maria Berger - Maîtrise d'AES 2001-2002

  3. La partie opérationnelle : l'algèbre relationnelle • Une algèbre est un ensemble avec des opérations fermées sur cet ensemble. • Une algèbre relationnelle est un ensemble d’opérations agissant sur des relations et produisant des relations • 4 opérations ensemblistes (union, intersection, différence, produit cartésien) • 3 opérations spécifiques des BD relationnelles (sélection, projection, jointure) Maria Berger - Maîtrise d'AES 2001-2002

  4. Opérations ensemblistes • Union • Les relations doivent avoir le même schéma Professeur  Maître de conférence Maria Berger - Maîtrise d'AES 2001-2002

  5. Opérations ensemblistes • Intersection • Les relations doivent avoir le même schéma • Exemple : l’intersection de Professeur et Maître de conférence est une relation nulle (!) • Différence • Les relations doivent avoir le même schéma • Exemple : la différence Professeur - Maître de conférence est la relation Professeur elle-même (!) Maria Berger - Maîtrise d'AES 2001-2002

  6. Opérations ensemblistes • Produit cartésien Maria Berger - Maîtrise d'AES 2001-2002

  7. Opérations spécifiques • Sélection (ou restriction) : relation composée de n-uplets vérifiant une condition Quels sont les coureurs suisses ? Relation résultat R = SELECTION(COUREUR, CodePays = ‘‘SUI’’) NOTATION :CodePays = ‘‘SUI’’(COUREUR) Maria Berger - Maîtrise d'AES 2001-2002

  8. Opérations spécifiques • Projection : relation restreinte aux attributs spécifiés dans la projection • Exemple : Nom et nationalité des coureurs ? R = PROJECTION(COUREUR, NomCoureur, Nationalité) NOTATION :{NomCoureur,Nationalité}(COUREURS) Relation résultat Maria Berger - Maîtrise d'AES 2001-2002

  9. Opérations spécifiques • Jointure : Relation résultat Maria Berger - Maîtrise d'AES 2001-2002

  10. Opérations spécifiques • Jointure (suite) • Notation : Coureur  Pays • -jointure : jointure sous condition autre que l’égalité Maria Berger - Maîtrise d'AES 2001-2002

  11. Opérations spécifiques • Division : relation composée des n-uplets tels que le produit cartésien avec le diviseur soit un sous-ensemble de la relation dividende (…?) Participer Epreuve Relation résultat de Particier  Epreuve Quels sont les athlètes qui ont participé à toutes les épreuves ? Maria Berger - Maîtrise d'AES 2001-2002

  12. a b c x y Union Intersection Différence x y a a b b c c x y x y Sélection Projection Produit cartésien Maria Berger - Maîtrise d'AES 2001-2002

  13. Remarques sur l'algèbre relationnelle • L'algèbre relationnelle permet l‘étude des opérateurs entre eux (commutativité, associativité, groupe d'opérateurs minimaux,...) • équivalence de certaines expressions • programmes d'optimisation qui transforment toute requête en sa forme équivalente la plus efficace • L'opération de jointure est très coûteuse : proportionnelle au nombre de n-uplets (m*n pour deux relations jointes) • toujours préférable de faire les restrictions le plus tôt possible afin de manipuler des tables les plus réduites possibles. Maria Berger - Maîtrise d'AES 2001-2002

  14. Pourquoi une requête est-elle meilleure qu'une autre ? Une requête n'est pas l'unique solution d'un problème. efficacités différentes Exemple : Fournisseur (N°fno, Nom, Adresse, Ville) Produit (N°prod, Designation, Prix, Poids, Couleur) Commande (N°comm, N°fno, N°prod, , Quantité) Produit = 8 lignes * 5 colonnes * 10 char = 400 char Commande = 10 lignes * 4 colonnes * 10 char = 400 char Références, prix et quantités des produits commandés en plus de 10 exemplaires par commande ? Maria Berger - Maîtrise d'AES 2001-2002

  15. R1= JOINTURE(Commande, Produit, Produit.N°prod = Commande.N°prod) • R2 = SELECTION(R1, Quantité > 10) • R3 = PROJECTION(R2, N°prod, Prix, Quantité) • R1 = jointure sur la table Commande et la table Produit = 400*400 = 160 000 char Maria Berger - Maîtrise d'AES 2001-2002

  16. R1 = PROJECTION(SELECTION(Commande, Quantité>10), N°prod, Quantité) • R2 = JOINTURE(R1, PROJECTION(Produit, N°prod, Prix), R1.N°prod = PROJ.N°prod) • R3 = PROJECTION(R2, N°prod, Prix, Quantité) • R2 = jointure sur le couple (N°prod, Prix) de la table Produit = 8*2*10 = 160 char et sur le couple (N°prod, Quantité) de la table Commande = 2*2*10 = 40 char • Total = 40*160 = 6400 char • Gain de 75% (facteur 25) en taille mémoire Maria Berger - Maîtrise d'AES 2001-2002

  17. Clés d’une relation • Clé primaire • Colonne(s) dont les valeurs permettent de repérer une seule ligne. • Exemple : dans la table COUREUR, c’est la colonne Numéro_Coureur qui est la clé. • Clé étrangère • Colonne constituée de la clé primaire d’une autre table • Traduit l’existence d’un lien entre 2 tables Maria Berger - Maîtrise d'AES 2001-2002

  18. Exercices • CRU(NomCru,Commune,Région,Couleur) • VINS(Région,Couleur,Millésime,Qualité) • CEPAGE-REGION(Cépage,Couleur) Req1 : Tous les crus ? Réponse : CRU (!) Maria Berger - Maîtrise d'AES 2001-2002

  19. Req2 : Tous les crus rouges • La liste des noms de crus rouges” PROJECTION(SELECTION(CRU, couleur=rouge), NomCru) Maria Berger - Maîtrise d'AES 2001-2002

  20. Contraintes d'intégrité • Un des outils les plus importants d'un SGBD • Contraintes de clé : • Vérification de l'unicité des clés • Contraintes de types de données : • Vérification des types de données saisies (entiers, réels, dates, chaînes de caractères, booléens...) • Vérification des domaines de validité (entier compris entre 0 et 20 pour une note d‘étudiant,...) • Contraintes d'intégrité référentielles : • Vérification à partir des clés étrangères (la clé primaire associée n'existe pas, note d'un étudiant qui n'existe pas, conséquences d'une suppression d'une fiche,...) Maria Berger - Maîtrise d'AES 2001-2002

More Related