Le document décrit un cours sur les bases de données avancées, abordant les modèles relationnel et objet, ainsi que les systèmes de gestion de bases de données relationnelles et orientées-objet.
0 évaluation0% ont trouvé ce document utile (0 vote)
243 vues38 pages
Le document décrit un cours sur les bases de données avancées, abordant les modèles relationnel et objet, ainsi que les systèmes de gestion de bases de données relationnelles et orientées-objet.
Le document décrit un cours sur les bases de données avancées, abordant les modèles relationnel et objet, ainsi que les systèmes de gestion de bases de données relationnelles et orientées-objet.
Le document décrit un cours sur les bases de données avancées, abordant les modèles relationnel et objet, ainsi que les systèmes de gestion de bases de données relationnelles et orientées-objet.
Objectifs Appréhender les différents modèles de base de données Utiliser différents outils de gestion de base de données Développer des compétences par rapport au champ des base de données avancées
05/27/2009 Bases de données avancées 2
Description du programme Présentation des modèles relationnel et objet Modèle Orienté Objet ODMG Modèle Relationnel Objet SQL3 XML
Démarche de réalisation Présentation orale avec projection Préparation de l’atelier Animation de l’atelier La plateforme utilisée : Linux
05/27/2009 Bases de données avancées 6
Le modèle relationnel
Concepts de base
05/27/2009 Bases de données avancées 7
Le modèle relationnel Les concepts du modèle relationnel sont fondés sur une théorie mathématique issue de : l'algèbre relationnelle la théorie des ensembles la logique formelle
05/27/2009 Bases de données avancées 8
Le modèle relationnel Le modèle de génie logiciel mettant en oeuvre le modèle relationnel repose sur le principe de la séparation entre les données et les traitements Le modèle a été inventé par le mathématicien CODD en 1970
05/27/2009 Bases de données avancées 9
Concepts de base La relation Les opérateurs algébriques opérations ensemblistes opérations relationnelles opérations dérivées Les contraintes d'intégrité La normalisation
05/27/2009 Bases de données avancées 10
La mise en oeuvre SGBD relationnel la relation est implantée par une table identification par la clé primaire liens sémantiques gérés par les clés étrangères les clés étrangères sont considérés comme des pointeurs logiques
05/27/2009 Bases de données avancées 11
SGBDR : caractéristiques Le SGBDR est muni d'un langage de programmation normalisé, et non procédural : SQL
05/27/2009 Bases de données avancées 12
SQL SQL permet, entre autres, de : déclarer et créer toutes les entités de la base de données manipuler les données stockées dans les tables interroger la base de données et en extraire des informations selon des critères exprimés à l'aide d'opérateurs algébriques définir des transactions contrôler l'accès aux données poser des verrous pour gérer l'accès concurrent 05/27/2009 Bases de données avancées 13 SQL : suite les données mémorisées sont typées à chaque attribut est associé un type les types proposés par les SGBD sont : les numériques les alphanumériques les dates les booléens les CLOB et BLOB les données sont persistantes 05/27/2009 Bases de données avancées 14 Conception d'applications architecture client-serveur la partie cliente est réalisée par un L3G la partie serveur est réalisée par un langage propre au SGBD, tel que : PL/ SQL la conception est réalisée moyennant le processus de normalisation nombre de jointures important
05/27/2009 Bases de données avancées 15
Points forts du modèle relationnel bases mathématiques indépendances des données et des programmes langage d'interrogation (SQL) puissant spécification logique des liens entre tables notion de transaction concept de verrou Large diffusion auprès de la majorité des grands constructeurs de SGBDR, arrivés à maturité
05/27/2009 Bases de données avancées 16
Points faibles du modèle relationnel l'indépendance des données et des programmes dissocie les données de leur comportement la normalisation augmente le nombre de tables et de jointures le typage est pauvre l'interfaçage entre les langages de programmation tiers et le SQL la faible capacité de modélisation
05/27/2009 Bases de données avancées 17
Le modèle objet Actions et données Concepts de base Mise en oeuvre Persistance Sérialisation SGBD orienté-objet SGBD relationnel Forces et faiblesses 05/27/2009 Bases de données avancées 18 Le modèle objet : Actions et données un système informatique réalise certaines actions sur certaines données structurer le logiciel autour des données plutôt qu'autour des actions les actions sont sujettes aux changements centrer la conception sur les données c'est la phylosophie du modèle objet
05/27/2009 Bases de données avancées 19
Le modèle objet : concepts de base un type de données abstrait (ADT) est constitué : d'une entité constituée de structures de données de primitives d'accès (méthodes)
05/27/2009 Bases de données avancées 20
Le modèle objet : concepts de base l'encapsulation des ATD : ne pouvoir accèder qu'à une vue abstraite (interface) l'héritage : pouvoir créer un nouveau ADT à partir d'un ancien l'ADT crée suite à un héritage est appelé type dérivé le type dérivé est compatible avec l'ADT abstrait
05/27/2009 Bases de données avancées 21
Le modèle objet : concepts de base une classe est un ADT mettant en oeuvre le principe de l'encapsulation, et dont les méthodes sont activées par liaison dynamique un objet est une instance d'une classe un langage de programmation est orienté objet lorsqu'il implante le concept de classe ainsi défini
05/27/2009 Bases de données avancées 22
Le modèle objet : Mise en oeuvre Identification des classes du système Structuration et assemblage des classes Identification des objets métiers Données modélisées par des classes reliées par des associations Conception basée sur l'approche ascendante
05/27/2009 Bases de données avancées 23
La persistance Certains objets crées par une application survivent à l’exécution : ils sont persistants La persistance est utile dans le cas où : Les informations mémorisées par les objets sont partagées par plusieurs applications La même application peut s’exécuter ultérieurement Les résultats réalisés par l’application sont à mémoriser
05/27/2009 Bases de données avancées 24
La sérialisation Mécanisme implémenté par la plupart des LPOO Permet d’enregistrer un graphe d’objets dans un fichier séquentiel de bytes (sérialisation) Le graphe peut être rechargé en mémoire par la suite
05/27/2009 Bases de données avancées 25
Qualités de la sérialisation Simplicité d’emploi du mécanisme Possibilité de partager des objets entre applications distribuées sans encodage ni décodage
05/27/2009 Bases de données avancées 26
Défauts de la sérialisation L’ensemble du graphe est mémorisé/ rechargé en une seule opération Absence de transaction
05/27/2009 Bases de données avancées 27
Les SGBD orientés objet Les BDOO existent depuis le milieu des années 80 Ont pour objectif d’aligner les SGBD avec la programmation OO Les langages OO ont un pouvoir d’expression assez important, mais manquent d’outils de gestion de persistance Les SGBD disposent de moyens pour gérer la persistance et manquent d’expressivité
05/27/2009 Bases de données avancées 28
Les SGBD OO Un SGBD OO dispose : De toutes les qualités d’un langage de programmation OO, De mécanismes performants de gestion de la persistance
05/27/2009 Bases de données avancées 29
Les SGBD relationnels On peut utiliser un SGBDR pour assurer la persistance des objets dans le contexte d’un modèle objet Toutefois : problème d’incompatibilité Le modèle relationnel est axé sur les données Le modèle objet est axé sur le comportement
05/27/2009 Bases de données avancées 30
Forces du modèle objet Unité entre les données et les programmes Principe de liaison dynamique Langage de programmation et modèle de données unique Moins de différences entre le monde à modéliser et le modèle de données Pouvoir d’expression et de modélisation important Réutilisation des composants logiciels
05/27/2009 Bases de données avancées 31
Faiblesses du modèle objet Insuffisances théoriques Problème de gestion de la persistance Navigation entre objets définie une fois pour toutes
05/27/2009 Bases de données avancées 32
Comparaison des deux modèles Modèle relationnel : Algèbre relationnelle Théorie des ensembles Logique formelle Normalisation Modèle objet : Basé sur la perception objet du monde réel à modéliser
Accès aux données Modèle relationnel : Chemins d’accès calculés à l’aide d’opérations algébriques Le SGBD optimise les requêtes en utilisant des théorèmes de l’algèbre relationnelle Modèle objet : Chemins calculés à partir des pointeurs
05/27/2009 Bases de données avancées 35
Le modèle objet-relationnel Consiste à fusionner les concepts des modèles relationnels et objets : Le modèle relationnel est étendu par l’adoption de concepts clés du modèle objet Non First Normal Form OID
05/27/2009 Bases de données avancées 36
Liens entre entités Peuvent être représentés comme : le modèle relationnel Le modèle objet Solution mixte
05/27/2009 Bases de données avancées 37
Accès aux données Lié à la représentation des liens entre entités Compétences de l’administrateur requises