Bases de données relationnelles

Embed Size (px)

DESCRIPTION

Bases de données relationnelles. Nguyen Tuan Loc. Résumé du cours précédent. Systèmes de fichiers. Caractéristiques. Comptabilité. Chirurgie. Problèmes. Consultations. Psychiatrie. Format des fichiers. Caractéristiques Plusieurs applications plusieurs formats plusieurs langages. - PowerPoint PPT Presentation

Text of Bases de données relationnelles

  • Bases de donnes relationnellesNguyen Tuan Loc

  • Rsum du cours prcdent

  • Systmes de fichiersCaractristiquesChirurgiePsychiatrieComptabilitConsultationsProblmes

  • Format des fichiersCaractristiquesPlusieurs applications plusieurs formatsplusieurs langagesProblmesDifficults de gestionDupont

    Symptomes : yTurlututu : sqjSymptomes : yTurlututu : sddAnalyses : xxxDupondTurlututusqjskSymptom: yyyy Analyses xxxx

    TurlututudhjsdAnalyses :xxDuipontTurlututu : sq

    Symptomyyyy Analysesxxxx

    TurlututudhjsdDuhpon

    Symptomes : yy Analyses : xxxx

    Symptomes : yy

  • Redondance (donnes)CaractristiquesPlusieurs applications plusieurs formatsplusieurs langagesRedondance de donnes

    ProblmesDifficults de gestionIncohrence des donnesDupont

    Symptomes : yTurlututu : sqjSymptomes : yTurlututu : sddAnalyses : xxxDupondTurlututusqjskSymptom: yyyy Analyses xxxx

    TurlututudhjsdAnalyses :xxDuipontTurlututu : sq

    Symptomyyyy Analysesxxxx

    TurlututudhjsdDuhpon

    Symptomes : yy Analyses : xxxx

    Symptomes : yy

  • Interrogations CaractristiquesPlusieurs applications plusieurs formatsplusieurs langagesRedondance de donnesPas de facilit dinterrogation Question dveloppementProblmesDifficults de gestionIncohrence des donnesCots levsMaintenance difficileDupont

    Symptomes : yTurlututu : sqjSymptomes : yTurlututu : sddAnalyses : xxxDupondTurlututusqjskSymptom: yyyy Analyses xxxx

    TurlututudhjsdAnalyses :xxDuipontTurlututu : sq

    Symptomyyyy Analysesxxxx

    TurlututudhjsdDuhpon

    Symptomes : yy Analyses : xxxx

    Symptomes : yyChiruSoftConsultSoftPsychiaSoftComptaSoft

  • Pannes ???CaractristiquesPlusieurs applications plusieurs formatsplusieurs langagesRedondance de donnesPas de facilit dinterrogation Question dveloppementRedondance de codeProblmesDifficults de gestionIncohrence des donnesCots levsMaintenance difficileGestion de pannes ???Dupont

    Symptomes : yTurlututu : sqjSymptomes : yTurlututu : sddAnalyses : xxxDupondTurlututusqjskSymptom: yyyy Analyses xxxx

    TurlututudhjsdAnalyses :xxDuipontTurlututu : sq

    Symptomyyyy Analysesxxxx

    TurlututudhjsdDuhpon

    Symptomes : yy Analyses : xxxx

    Symptomes : yyChiruSoftConsultSoftPsychiaSoftComptaSoft

  • Partage de donnesCaractristiquesPlusieurs applications plusieurs formatsplusieurs langagesRedondance de donnesPas de facilit dinterrogation Question dveloppementRedondance de codeProblmesDifficults de gestionIncohrence des donnesCots levsMaintenance difficileGestion de pannes ???Partage des donnes ???Dupont

    Symptomes : yTurlututu : sqjSymptomes : yTurlututu : sddAnalyses : xxxDupondTurlututusqjskSymptom: yyyy Analyses xxxx

    TurlututudhjsdAnalyses :xxDuipontTurlututu : sq

    Symptomyyyy Analysesxxxx

    TurlututudhjsdDuhpon

    Symptomes : yy Analyses : xxxx

    Symptomes : yyChiruSoftConsultSoftPsychiaSoftComptaSoft

  • ConfidentialitCaractristiquesPlusieurs applications plusieurs formatsplusieurs langagesRedondance de donnesPas de facilit dinterrogation Question dveloppementRedondance de codeProblmesDifficults de gestionIncohrence des donnesCots levsMaintenance difficileGestion de pannes ???Partage des donnes ???Confidentialit ???Dupont

    Symptomes : yTurlututu : sqjSymptomes : yTurlututu : sddAnalyses : xxxDupondTurlututusqjskSymptom: yyyy Analyses xxxx

    TurlututudhjsdAnalyses :xxDuipontTurlututu : sq

    Symptomyyyy Analysesxxxx

    TurlututudhjsdDuhpon

    Symptomes : yy Analyses : xxxx

    Symptomes : yyChiruSoftConsultSoftPsychiaSoftComptaSoft

  • Lapproche Bases de donnes (1)Modlisation des donnes Eliminer la redondance de donnes Centraliser et organiser correctement les donnes Plusieurs niveaux de modlisation Outils de conception

    Logiciel Systme de Gestion de Bases de DonnesFactorisation des modules de contrle des applications- Interrogation, cohrence, partage, gestion de pannes, etcAdministration facilites des donnes

  • Lapproche Bases de donnes (2)BDVIII - Concurrence daccsVII - Gestion des pannesI- Indpendance PhysiqueIX - Gestion de la confidentialitII- Indpendance LogiqueVI - Gestion de la cohrenceX - StandardsV - Optimisation des questionsIII Langage de manipulationIV - Gestion des vues

  • Modlisation du relMdecineffectueVisite

    RelModle conceptuelIndpendant du modle de donnesIndpendant du SGBDModle logiqueDpendant du modle de donnesIndpendant du SGBDCodasylRelationnelObjetXMLModle PhysiqueDpendant du modle de donnesDpendant du SGBDOrganisation physique des donnesStructures de stockage des donnesStructures acclratrices (index)

  • Modlisation Relationnelle (1)Champs, attributs, colonnes

    Champs, attributs, colonnes

    Champs, attributs, colonnes

    Relation ou table

    Tuples, lignes ou n-uplets

    Tuples, lignes ou n-uplets

    Tuples, lignes ou n-uplets

    Tuples, lignes ou n-uplets

    Id-DNomPrnom1DupontPierre2DurandPaul3MasseJean...

  • Modlisation Relationnelle (2)

    DocteursId-DNomPrnom1DupontPierre2DurandPaul3MasseJean...

    VisitesId-DId-PId-VDatePrix12115 juin25011212 aot18022313 juillet3502341 mars250

    PatientsId-PNomPrnomVille1LebeauJacquesParis2TrogerZoeEvry3DoeJohnParis4PerryPauleValenton....

    PrescriptionsId-VLigneId-MPosologie11121 par jour12510 gouttes2182 par jour22121 par jour2332 gouttes...

    MdicamentsId-MNomDescription1Aspegic 1000..2Fluisdal..3Mucomyst.......

  • I - Indpendance PhysiqueIndpendance des programmes d'applications vis vis du modle physique :

    Possibilit de modifier les structures de stockage (fichiers, index, chemins d'accs, ) sans modifier les programmes;

    Ecriture des applications par des non-spcialistes des fichiers et des structures de stockage;

    Meilleure portabilit des applications et indpendance vis vis du matriel.

  • II - Indpendance LogiqueLes applications peuvent dfinir des vues logiques de la BDGestion des mdicamentsCabinet du Dr. MasseVisites21Id-D1 mars15 juinDate250250Prix41Id-V32Id-PVisites21Id-D1 mars15 juinDate250250Prix41Id-V32Id-P...PrnomNomId-PZoeTroger2JacquesLebeau1Patients...PrnomNomId-PZoeTroger2JacquesLebeau1Patients...512Id-M10 gouttes1 par jourPosologie21Ligne11Id-VPrescription...512Id-M10 gouttes1 par jourPosologie21Ligne11Id-VPrescription.....DescriptionNomId-M..Mucomyst3..Fluisdal2..Aspegic 10001Mdicament.....DescriptionNomId-M..Mucomyst3..Fluisdal2..Aspegic 10001Mdicament

    Nombre_MdicamentsId-MNomDescriptionNombre1Aspegic 1000..302Fluisdal..203Mucomyst..230.......

  • Avantages de lindpendance logiquePossibilit pour chaque application d'ignorer les besoins des autres (bien que partageant la mme BD).

    Possibilit d'volution de la base de donnes sans rcriture des applications :ajout de champs, ajout de relation, renommage de champs.

    Possibilit d'intgrer des applications existantes sans modifier les autres.

    Possibilit de limiter les consquences du partage : Donnes confidentielles.

  • III - Manipulation aiseLa manipulation se fait via un langage dclaratif

    La question dclare lobjectif sans dcrire la mthodeLe langage suit une norme commune tous les SGBDSQL : Structured Query Langage

    Syntaxe (aperu !)

    Select From Where Group By Order By

  • Exemple de question SQL (1)Nom et description des mdicaments de type aspirine

    Select Nom, Description From MdicamentsWhere Type = Aspirine

  • Exemple de question SQL (2)Patients parisiens ayant effectus une visite le 15 juin

    Select Patients.Nom, Patients.PrnomFrom Patients, VisitesWhere Patients.Id-P = Visites.Id-Pand Patients.Ville = Parisand Visites.Date = 15 juin

  • Exemple de question SQL (3)Dpenses effectues par patient tri par ordre dcroissant

    Select Patients.Id-P, Patients.Nom, sum(Prix) From Patients, VisitesWhere Patients.Id-P = Visites.Id-PGroupBy Patients.Id-P, Patients.NomOrderBy sum(Prix) desc

  • IV Gestion des vuesLes vues permettent dimplmenter lindpendance logique en permettant de crer des objets virtuelsVue = Question SQL stocke Le SGBD stocke la dfinition et non le rsultatExemple : la vue des patients parisiensCreate View Parisiens as (SelectNom, PrnomFrom PatientsWhere Patients.Ville = Paris )

  • Gestion des vuesLe SGBD transforme la question sur les vues en question sur les relations de baseQuestion Q sur des vuesDfinition des vuesGestionnaire de VuesQuestion Q sur les relations de base

  • V Excution et OptimisationTraduction automatique des questions dclaratives en programmes procduraux : Utilisation de lalgbre relationnelle

    Optimisation automatique des questions Utilisation de laspect dclaratif de SQL Gestion centralise des chemins d'accs (index, hachages, ) Techniques doptimisation pousses

    Economie de l'astuce des programmeursmilliers d'heures d'criture et de maintenance de logiciels.

  • SlectionPatients de la ville de Paris

    PatientsId-PNomPrnomVille1LebeauJacquesParis2TrogerZoeEvry3DoeJohnParis4PerryPauleValenton

    PatientsId-PNomPrnomVille1LebeauJacquesParis2TrogerZoeEvry3DoeJohnParis4PerryPauleValenton

  • ProjectionNom et prnom des patients

    PatientsId-PNomPrnomVille1LebeauJacquesParis2TrogerZoeEvry3DoeJohnParis4PerryPauleValenton

    PatientsId-PNomPrnomVille1LebeauJacquesParis2TrogerZoeEvry3DoeJohnParis4PerryPauleValenton

  • JointurePatients et leurs visites

    PatientsId-PNomPrnomVille1LebeauJacquesParis2TrogerZoeEvry3DoeJohnParis4PerryPauleValenton

    VisitesId-DId-PId-VDatePrix12115 juin25011212 aot18022313 juillet3502341 mars250

    Id-PNomPrnomVilleId-DId-PId-VDatePrix1LebeauJacquesParis11212 aot1802TrogerZoeEvry12115 juin2502TrogerZoeEvry22313 juillet3503DoeJohnParis2341 mars250

  • Exemple de plan dexcu