Bases de données relationnelles Hicham BEHJA 2 Plan du cours  Architecture d’u

Bases de données relationnelles Hicham BEHJA 2 Plan du cours  Architecture d’un SGBD  Algèbre Relationnelle  Rappel sur les SGBD  Normalisation 3 Bases de données Une base de données est ensemble de données : représentant une partie du monde réel stockées en mémoire secondaire pouvant être interrogées et mises à jour servant de support à une ou plusieurs applications Mais… base de données  banque de données 4 Bases de données Une collection de données est appelée base de données si: format connu (défini au niveau du système et non uniquement au niveau des programmes utilisant les données) et défini par des méta-données (données décrivant des données) Données stockées, recherchées, modifiées uniquement par un type spécial de programmes appelé système de gestion de bases de données Données manipulées sous le contrôle de transactions (ensemble de règles formelles assurant l’intégrité des données 5 Système de gestion de bases de données (SGBD) Un SGBD est un ensemble de logiciels-système permettant aux utilisateurs de: mettre en forme sauvegarder, mettre à jour (modifier, insérer, supprimer) rechercher efficacement des données spécifique dans une très grande masse d’informations partagées entre plusieurs utilisateurs 6 Fonctionnalités d’un SGBD (1) Contrôler la redondance d'informations Partage des données Fiabilité des données Cohérence et contraintes d’intégrité Sûreté du fonctionnement Notion de transaction atomique Techniques de sauvegarde et/ou de journalisation Procédures de reprise sur panne 7 Fonctionnalités d’un SGBD (2) Sécurité d’accès commandes d’autorisation Partage et accès concurrents techniques de verrouillage Interrogation : langages de requêtes déclaratifs et incomplets  intégration du langage de requête et d’un langage de programmation  dysfonctionnements (typage et traitement ensembliste) 8 Architecture ANSI-SPARC ES ES ES CS IS 9 Architecture ANSI-SPARC Un standard pour tout SGBD Proposé vers 1965 par Charles Bachman Auteur du concept de la BD Créateur du modèle de données réseau (Codasyl) Plus tard de l’architecture Open System Interconnection (OSI) Prix Turing La plus haute récompense scientifique en informatique en USA 10 Architecture ANSI-SPARC Schéma Conceptuel (CS) D’une manière abstraite: un modèle conceptuel de l’univers réel de la BD D’une manière appliquée : la définition logique de la BD Une et une seule Les données logiques, leurs structures et types Relations, attributs, domains Entités… Objets, Types, Classes Leur manipulations procédures, fonctions, méthodes… ES ES ES CS IS 11 La définition logique de la BD (suite) Les liens sémantiques Données d’un même objet réel Les contraintes d’intégrité Mono-valeur Référentielles Variées Les contraintes de sécurité Qui peut manipuler quoi Architecture ANSI-SPARC Schéma Conceptuel (CS) ES ES ES CS IS 12 Le CS est définit par le DBA seul Complexité Sécurité Par l’intégration de données des différentes applications de la BD Plusieurs méthodes de conception, plus ou moins formelles Entité-Relations Objets & Fonctions Merise Normalisation relationnelle Architecture ANSI-SPARC Schéma Conceptuel (CS) ES ES ES CS IS 13 La BD (donc le CS) est définit en utilisant : Le langage de définition de données La BD est manipulée au niveau de CS à travers: Le langage de manipulation de données Les deux sous-langages forment: Le langage de base de données En général incomplet au sens de la machine de Turing SQL pour une BD relationnelle Architecture ANSI-SPARC Schéma Conceptuel (CS) ES ES ES CS IS 14 Architecture ANSI-SPARC Schémas Externes (ESs) Un ES = un sous-schéma d’une BD Dérivé du CS La dérivation est définie dans le ES Définit une vue de la BD Une sous-base virtuelle En général partielle Pour des usagers ad-hoc Vues 4-GL, orientés Web notamment (HTML, XML…) Pour des programmeurs d’application Vues SQL, pour SQL imbriqué ou Vbasic, ou procédures stockées… ES ES ES CS IS 15 Architecture ANSI-SPARC Schémas Externes (ESs) Une BD est en général munie de plusieurs différentes ESs  Mais tous ont le CS comme racine commune Donc tous doivent être accepté par le DBA Perte d’autonomie de l’usager ES ES ES CS IS 16 Architecture ANSI-SPARC Schéma Interne (IS)  Définit la représentation interne de la BD Niveau interne ou physique Les disques, fichiers hachés, arbres-B… contenant la BD La représentation physique de valeurs de données Réel, entier, texte, OLE… Encodage… Définit l’application du CS sur le IS Selon le principe de l’indépendance de niveaux logique et physique ES ES ES CS IS Assez d ’ANSI-SPARC 17 Le modèle relationnel de données Défini en 1970 par Codd Simple facile à appréhender, même pour un non spécialiste Repose sur de solides bases théoriques  Le modèle relationnel représente l'information dans une collection de relations. 18 Le modèle relationnel de données (Définitions) un domaine D est un ensemble de valeurs atomiques. Le terme atomique signifie que ces valeurs sont considérées comme insécables au niveau du modèle. un schéma de relation R, dénoté par R(A1, A2, ..., An), est un ensemble d'attributs R = {A1, A2, ..., An}. A chaque attribut Ai est associé un domaine Di, Ai indiquant le rôle joué par le domaine Di dans la relation R. Un schéma de relation décrit une relation et représente l'intension de celle-ci. Le degré de la relation est le nombre d'attributs de celle-ci. Exemple :  ETUDIANT(Nom, CNE, adresse, age, diplôme) 19 Définition d’une BD relationnelle La définition d’une BD suppose l’existence de: un ensemble d’attributs un ensemble de domaines (ou types, ou valeurs) un ensemble de noms de tables 20 Schéma de relation Définition: schéma de relation R = ensemble fini de la forme R = {A1:dom(A1),…, An: dom(An)} où Ai est un attribut et dom(Ai) le domaine de Ai noté R = {A1,…, An} 21 N-uplets et relations Définition: un n-uplet t sur R est une fonction qui associe à chaque attribut de Ai de R une valeur de son domaine dom(Ai) Si t(Ai) = ai pour tout i, alors t est représenté par ai… an Définition: une relation r sur R est un ensemble de n-uplets sur R R est appelé schéma de r, et noté sch(r) 22 Caractéristiques des relations une relation est un ensemble de nuplets, il n'y a donc pas de notion d'ordre sur les nuplets, par contre un nuplet est un séquence ordonnée d'attributs, une valeur d'attribut est atomique mais peut être éventuellement nulle (valeur particulière qui indique que la valeur est manquante). 23 Contraintes d’intégrité Elles permettent d’assurer la cohérence des données. Les contraintes d’intégrité sont : Contrainte de domaine : restriction de l’ensemble des valeurs possibles d’un attribut.  Contrainte de clé : définit un sous-ensemble minimal des colonnes tel que la table ne puisse contenir deux lignes ayant mêmes valeurs pour ces colonnes. Il existe trois types de clés: Clé primaire : Ensemble minimum d'attributs qui permet de distinguer chaque n-uplet de la table par rapport à tous les autres.Chaque table doit avoir une clé primaire. Clé candidate : Ensemble minimum d'attributs susceptibles de jouer le rôle de la clé primaire. Clé étrangère : fait référence à la clé primaire d'une autre table. 24 Contraintes d’intégrité Contrainte obligatoire : précise qu’un attribut ou plusieurs attributs doivent toujours avoir une valeur. Contrainte d’intégrité référentielle ou d’inclusion: lie deux colonnes ou deux ensembles de colonnes de deux tables différentes. 25 Règles à suivre pour concevoir un schéma relationnel 26 Règles à suivre pour concevoir un schéma relationnel Règle I : Toute entité est traduite en une table relationnelle dont les caractéristiques sont les suivantes : le nom de la table est le nom de l’entité ; la clé de la table est l’identifiant de l’entité ; les autres attributs de la table forment les autres colonnes de la table. 27 Règle II : Toute relation binaire plusieurs à plusieurs est traduite en une table relationnelle dont les caractéristiques sont les suivantes : le nom de la table est le nom de la relation ; la clé de la table est formée par la concaténation des identifiants des entités participant à la relation ; les attributs spécifiques de la relation forment les autres colonnes de la table. Une contrainte d’intégrité référentielle est générée entre chaque colonne clé de la nouvelle table et la table d’origine de cette clé. Règles à suivre pour concevoir un schéma relationnel 28 Règles à suivre pour concevoir un schéma relationnel 29 Règles à suivre pour concevoir un schéma relationnel 30 Règle III : Toute relation binaire un à plusieurs est traduite : 1. soit par un report de clé : l’identifiant de l’entité participant à la relation côté N est ajoutée comme colonne supplémentaire à la table représentant l’autre entité. Cette colonne est parfois appelée clé étrangère. Le cas échéant, les attributs spécifiques à la relation sont eux aussi ajoutés à la même table ; 2. soit par une table spécifique dont les caractéristiques sont les suivantes : le nom de la table est le nom de la relation ; la clé de la table est l’identifiant de l’entité participent à la relation côté 1 ; les attributs spécifiques de la relation forment les autres colonnes de la table. Règles à suivre pour concevoir un schéma relationnel 31 Règles à suivre pour concevoir un schéma relationnel 32 Règle IV : Toute relation binaire un à un uploads/Management/ base-de-donnees-relationnelles.pdf

  • 31
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Nov 23, 2021
  • Catégorie Management
  • Langue French
  • Taille du fichier 1.8367MB