Rappels sur les BD relationnelles - Introduction à l'Administration de Bases de Données
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Introduction à l’Administration de Bases de Données Chapitre 1 Rappels sur les BD relationnelles 1 Licence 3 en Sciences de l’Informatique 2016/2017 Enseignant: DJEBLI Hamza
2 Chapitre 1: Rappels sur les BD relationnelles 1. Bases de données 2. SGBD 3. Etapes de conception 4. Approche relationnelle
3 Chapitre 1: Rappels sur les BD relationnelles 1. Bases de données 2. SGBD 3. Etapes de conception 4. Approche relationnelle
4 1. Bases de données Définitions • On définit une base de données comme l’ensemble des données stockées d’une façon structurée et avec le moins de redondances. • Pour les manipuler, on utilise généralement un logiciel spécialisé appelé SGBD (Système de Gestion de Bases de Données). But • retrouver de l’information par son contenu en se basant sur des critères de recherche.
5 Qualité d’une BD 1. Cohérence des données de la base Exemple: M. ou Monsieur Qualité Nom Téléphone M. Ahmed 123456 Monsieur Mohamed 345678 Mme Meriem 556783 2. Absence de redondance Nom Wilaya CodeWilaya Ahmed Constantine 25 Mohamed Alger 16 Meriem Oran 31
6 Modèles de données Les modèles de données correspondent à la manière de structurer l’information dans une BD: 1. Modèle hiérarchique/réseau 2. Modèle relationnel 3. Modèle objet 4. Modèle relationnel-objet
7 Modèle hiérarchique/réseau ~1960 Exemple 1 Personne Nom Prénom Logement Voiture Numéro Marque Rue Numéro Ville
9 Modèle relationnel ~1970 Définition • Le modèle relationnel permet de modéliser les informations contenues dans les bases de données en utilisant des relations, c’est-à-dire des ensembles d’attributs. 1970: proposition par E. F. Codd 1976: commercialisation du 1er SGBD ~1980: Oracle Database 1986: standardisation de SQL
10 Modèle relationnel ~1970 Exemple: Ouvrage (Code, Titre, Auteur, Editeur) Code Titre Auteur Editeur 1 Langage C S. Ahmed Eyrolles 2 Langage Java S. Mohamed Larousse 3 Informatique A. Ali Flammarion 4 Systèmes I. Mahmoud Grasset d’Exploitation 5 Introduction à la T. Adel O’Reilly Robotique 6 Systèmes M. I. Abdallah Flammarion Intelligents 7 Langage C: S. Chawki Flammarion Notions Avancées
11 Modèle relationnel ~1970 Exemple 2
12 Modèle objet ~1980 Bases de données orientées objet - Types complexes - Paradigme objet - Plus complexes - Problèmes de performance
13 Modèle relationnel-objet - Champs multivalués intégrés dans des objets: Cod Titre Auteur Editeur e 1 Langage C S. Ahmed Eyrolles 2 Langage Nom Prénom Larousse Java Nabil Ahmed Hakim Karim Fateh Nabil 3 Informatique A. Ali Flammarion 4 Systèmes I. Mahmoud Grasset d’Exploitatio n
14 Evolution des BD 1. Bases de données réparties Système distribué Migration de données Réplication des données Sécurité Disponibilité Transparence à l’utilisateur 2. Extraction de l’information: Bases de données déductives et Data Mining (fouille de données)
15 Evolution des BD (suite) 3. Entrepôts de BD (datawarehouse) BD récapitulatives, constituées à partir de différentes sources pour disposer d’un accès homogène à l’ensemble des données 4. Bases de données multimédia Stocker des données multimédia: sons, images, vidéos.
16 Chapitre 1: Rappels sur les BD relationnelles 1. Bases de données 2. SGBD 3. Etapes de conception 4. Approche relationnelle
17 2. SGBD Définition • Un SGBD (Système de Gestion de BD) est un logiciel complexe qui permet de gérer et d’utiliser les données que l’on stocke tout en cachant la complexité des opérations. a) Architecture b) Objectifs c) LDD/LMD d) Protection des données e) Transaction f) Concurrence g) Droits d’accès
18 2.a) Architecture d’un SGBD ANSI/SPARC (1975): 3 niveaux d’abstraction Niveau Vues des utilisateurs externe (selon rôle) Modèle conceptuel et/ou Niveau conceptuel Modèle logique Niveau interne Modèle physique: enregistrements, fichiers
19 2.a) Architecture d’un SGBD (suite) ANSI/SPARC (1975): 3 niveaux d’abstraction
20 2.b) SGBD: quelques objectifs Indépendance physique des données: - Une modification de l'organisation physique des données (ex: utilisation d’autres structures de fichiers) n'entraîne pas de modification dans les autres niveaux ou programmes d'application. Indépendance logique des données: - Une modification de l'organisation logique des données (ex: ajout d’un attribut) n'entraîne pas de modifications dans les autres niveaux ou programmes d'application. Efficacité, cohérence et intégrité des données, partage et sécurité..
21 2.c) LDD / LMD Un SGBD offre deux langages de haut niveau: un Langage de Description de Données (LDD) qui permet d’agir sur la structure de la base de données (ajout, suppression et modification des tables) un Langage de Manipulation de Données (LMD) qui permet d’interroger et de mettre à jour le contenu de la base de données.
22 2.d) Protection des données Dans tous les cas, le SGBD doit permettre de restaurer les données. Ces opérations sont généralement réalisées en utilisant des « journaux » (logs) qui enregistrent au fur et à mesure les opérations faites sur la base : c’est le mécanisme de la journalisation. Ce journal est utilisé pour refaire, ou défaire, ces opérations.
23 2.e) Transactions Opérations de modification effectuées sur la base de données. Des propriétés de mesure de la qualité de ces transactions sont proposées sous le terme ACID (1983):
24 2.e-f) Concurrence et droits d’accès Le SGBD doit permettre de donner l’accès aux bases de données à plusieurs utilisateurs simultanément: - Algorithmes de synchronisation - Gestion de droits d’accès (de privilèges)
25 Exemples Pick, Pick System, 1968 dBase, Ashton-Tate, 1978 Oracle Database, Oracle Corporation, 1979 Informix, IBM, 1981 DB2, IBM, 1983 PostgreSQL, M. Stonebraker, 1985 Microsoft SQL Server, Microsoft, 1989 Microsoft Access, Microsoft, 1992 MySQL, Oracle Corporation, 1995 SQLite, D. R. Hipp, 2000
26 Chapitre 1: Rappels sur les BD relationnelles 1. Bases de données 2. SGBD 3. Etapes de conception 4. Approche relationnelle
27 3. Etapes de conception • Analyse du monde réel à modéliser a • Mise en forme du modèle pour l’intégrer b dans un SGBD • Création effective dans le SGBD des structures c et leur remplissage
28 3.a) Analyse du monde réel Déterminer les objectifs du système Déterminer les champs qui contiendront les données Regrouper les champs en objets Identifier les liens entre les objets Définir les contraintes Modèle conceptuel
29 3.b) Passage au SGBD Le modèle conceptuel est transformé en représentation acceptable par le SGBD (modèle logique). Ex : Modèle relationnel Éliminer la redondance. Ex : utiliser la normalisation (modèle relationnel)
30 3.b) Création et utilisation (sous le SGBD) Création Création Remplissage Création des des tables des tables des vues utilisateurs
31 3. Etapes de conception : Résumé
32 Chapitre 1: Rappels sur les BD relationnelles 1. Bases de données 2. SGBD 3. Etapes de conception 4. Approche relationnelle
33 4. Approche relationnelle a) Concepts b) Opérations c) Passage au modèle relationnel d) Normalisation
34 4.a) Concepts Le modèle relationnel tire son nom de la notion de relation mathématique entre des éléments. Chacun de ces éléments peut prendre des valeurs dans un ensemble défini. Ex: (Ahmed, Constantine) (Ahmed, Constantine): tuple ou enregistrement Nom: attribut ou champ Personne: nom de la relation Personne(Nom, LieuNaissance): schéma relationnel Degré, Cardinalité, Table, Base de données
35 4.a) Concepts (suite) Clé d’une relation: champ, ou ensemble de champs, permettant d’identifier précisément un enregistrement. Une relation peut comprendre plusieurs clés possibles (clés candidates). Une des clés minimales est choisie pour constituer la clé primaire de la relation. Une clé étrangère est un groupe d’attributs d’une relation R1 devant apparaître comme clé primaire dans une autre relation R2. Dépendances fonctionnelles: relations existant entre les différents champs d’une relation. Une dépendance fonctionnelle existe entre deux ensembles de champs si les valeurs contenues dans l’un des ensembles permettent de déterminer les valeurs contenues dans l’autre ensemble.
36 4.b) Opérations du modèle relationnelle (algèbre relationnelle) Opérations ensemblistes Opérations relationnelles Calculs et agrégats
37 4.b.1) Opérations ensemblistes 1. Union () Mise en commun des enregistrements de chaque relation. Les enregistrements identiques ne sont intégrés qu’une seule fois. 2. Différence (-) L’opération différence consiste à désigner les enregistrements qui appartiennent à une relation sans appartenir à l’autre. 3. Intersection () L’intersection désigne les enregistrements communs aux deux relations. 4. Produit cartésien (X) Le produit cartésien permet la combinaison des tuples de deux relations sans tenir aucun compte du contenu des données.
38 4.b.1) Opérations ensemblistes (suite)
39 4.b.2) Opérations relationnelles 1. Projection (A(R)) Extraire certains champs (A) de la relation (R). 2. Sélection (ou restriction) (F(R)) Extraire les enregistrements de la relation (R) répondant à un critère (F). 3. Jointure (⋈) Lier les relations par le contenu commun d’un champ. L’opération de jointure peut être vue comme une sélection des enregistrements obtenus par le produit cartésien des relations, dont les contenus du champ sur lequel on effectue la jointure sont égaux.
40 4.b.2) Opérations relationnelles
41 4.b.3) Calcul et agrégats Calculs Il est possible d’effectuer des opérations statistiques globales d’un champ, comme les calculs du nombre d’enregistrements, de moyenne, de maximum, de minimum. On obtient dans ce cas une nouvelle relation réduite à une ligne et une colonne qui contient la valeur calculée. Agrégats Regrouper les enregistrements qui contiennent les mêmes valeurs dans un champs.
42 4.c) Passage au modèle relationnel Règles générales: Une entité donne une relation de même clé. Une association donne une relation dont la clé est composée des deux clés des entités associées et des attributs de l’association. Pour la cardinalité 1,1: La relation représentant l’association disparait et fusionne avec la relation représentant l’entité associée avec la cardinalité 1,1.
43 4.d) Normalisation Le modèle relationnel procure des outils destinés à tester la qualité et la cohérence des relations dans un schéma relationnel. Cette étape, appelée normalisation, permettra de vérifier certaines propriétés des relations et le cas échéant de les transformer. On peut se limiter en général aux trois premières formes normales.
44 4.d) Normalisation 1FN 2FN 3FN • Tout champ • La relation est • La relation est contient une en 1FN, en 2FN, valeur • Tout champ • Tout champ atomique. qui n’appartenant n’appartient pas à une clé pas à la clé ne ne dépend dépend pas pas d’un autre d’une partie champ non de la clé. clé.
45 Chapitre 1: Rappels sur les BD relationnelles 1. Bases de données: définition, but, qualité des données, modèles de données, évolution de BD. 2. SGBD définition, architecture, objectifs, LDD/LMD, protection des données, transaction, concurrence, droits d’accès, exemples. 3. Etapes de conception analyse du monde réel, passage au SGBD, création et utilisation. 4. Approche relationnelle concepts, opérations, passage au modèle relationnel, normalisation
Vous pouvez aussi lire