Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC
utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/
Supports du cours Transparentes (voir Google+) Livre : Database System Concepts (Avi Silberschatz, Henry F. Korth, S. Sudarshan)
Systèmes de gestion de bases de données Database management system - DBMS Un DBMS est une collection de données interreliées avec un ensemble de programmes pour accéder à ces données. Le bases de données doivent gérer de grandes quantité d information : définition de structures pour le stockage de l information définition de mécanismes de manipulation de l information.
Instances et schéma Definition (Instance) Collection des informations stockées dans la base de données à un instant donné Definition (Schéma) La conception globale de la base de données
Les langages pour les bases de données Le langage de définition de données (DDL) : la spécification d un schéma par un ensemble de définitions avec des utiles pour spécifier des propriétés supplémentaires des données. Le langage de manipulation de données (DML) : permet aux utilisateurs d accéder (via query) à ou manipuler des données. À noter : SQL contient le deux!
Caractéristiques de DBMS Les données sont persistantes et il faut les protéger Il doit avoir la possibilité d interroger et mettre à jour souvent rapidement facilement la base de données
Quels sont les problèmes à résoudre Redondance et incohérence des données Difficulté d accès aux données Isolement de données Problèmes d intégrité Problèmes d atomicité Anomalies du aux accès concurrent Problèmes de sécurité
L objectif principal Fournir aux utilisateurs une vue abstraite des données! 1. Utilisateur d une BD (base de données) doit juste comprendre comment les données sont organisées. 2. L implémentation peut changer, sans que le schéma de la BD change.
Trois niveaux d abstraction 1. Niveau physique : comment les données sont stockées Décrit les structures de données à bas niveau 2. Niveau logique : quelles sont les données stockées et quelles relations existent entre ces données. Décrit la base de données en fonction d un petit nombre de structures simples. 3. Niveau de vues : décrit qu une partie de la base de données Le niveau existe pour simplifier l interaction des utilisateurs avec le système. À noter : Le système peut fournir nombreuses vues de la même base de données.
Modèle des données Definition (Modèle des données) Collection d outils conceptuels pour décrire les données, les relations entre les données, la sémantique des données et des contraintes de cohérence. Un modèle de données décrit la conception d une base de données au niveau physique, logique, et de vues.
Modèle ER (entity-relationship) Le modèle ER utilise une collection d objets de base Les entités : objet qui se distingue des autres objets. Les entités sont décrits dans une base de données par un ensemble d attributs. Les relations : une association entre plusieurs entités. Le schéma peut être exprimé graphiquement par un diagramme entité-relation (UML). Le modèle ER peut représenter des contraintes. Ex : la cardinalité : le nombre d entités à qui peut être associé un entité par une relation.
Modèle relationnel Le modèle utilise de tableau pour représenter les données et les relations au même temps Les tableau sont appelés relations Les colonnes du tableau correspondent aux attributs
Normalisation L objectif est de générer un ensemble de schémas de relations qui nous permettent de stocker les informations sans redondance inutile.
Manipulation de la base de données Récupération des informations stockée dans la base de données Insertion de nouvelles informations Suppression d informations Modification des information stockée
SQL (Structured Query Language) Definition (Query) Une query est une déclaration demandant la récupération des informations. Une query/requête prend en entrée plusieurs tableaux et retourne toujours un seul tableau
Historique 1 1950-1960 : Données sauvegardées sur bandes magnétiques 1970 : Apparition du disque dur ; Nouvelles structures de données ; Séparation entre le niveau logique et le niveau physique ; du modèle relationnel (Codd). 1980 : Le modèle relationnel commence à être utilisé (Naissance de SQL, IBM DB2, Oracle)
Historique 2 1990 : Développement des outils pour l analyse Naissance du WWW ; Aujourd hui : XML base de données open source (MySQL) techniques de Data mining Futur : Problèmes à résoudre : Efficacité de l analyse Sécurité/privacy
du cours 1. Introduction au bases de données 2. Modèle ER 3. UML 4. Modèle relationnelle 5. Décompositions 6. Formes normales 7. Algèbre relationnelle 8. Calcul relationnel 9. SQL