COURS Bases de données orientées objet Mlle Boutheina Missaoui Email: boutheina.missawi@esct.rnu.tn ISG-Tunis 2009-2010
QUELQUES Références : Cours de André Gamache - l’université de Laval, Québec http://www2.ift.ulaval.ca/~agamache/IFT19023/H2009/index.html Cours de Pierre Wolper - Institut Montefiore, Université de Liège, Belgique http : //www.montefiore.ulg.ac.be/~pw/cours/bd.html http://www.service-architecture.com/object-oriented-databases B.Missaoui - Cours BDOO
Pré-requis: 1 Programmation Orienté Objet 2 Bases de données et SGBD B.Missaoui - Cours BDOO
Objectifs du cours: 1 Présenter la BDOO 2 Introduire les notions de base 3 Comprendre l’utilité de la BDOO B.Missaoui - Cours BDOO
Plan DU COURS: Capitre 1: Introduction à la BDOO 1 (1 séance) 2 Capitre 2: Interrogation d’une BDOO (3 séances) B.Missaoui - Cours BDOO
Chapitre1: Introduction à la BDOO Motivation 2 BDOO a. Définition b. Historique c. Approches de développement d. Caractéristiques 1ère séance 4 Langages d’interrogation 5 Forces / Faiblesses B.Missaoui - Cours BDOO
SGBDR: une critique BDOO ? Motivation BDOO Langages d’interrogation Forces / Faiblesses SGBDR: une critique Le modèle relationnel connaît un très grand succès et s’avère très adéquat pour les applications traditionnelles des bases de données. Il est beaucoup moins adapté aux nouvelles applications (complexes) telles que: CAD/CAM (Computer-Aided Design/Computer-Aided Manufacturing) BD géographiques (GIS : Geographic Information Systems) BD multimédia (son, image, texte, etc. combinés)… BDOO ? B.Missaoui - Cours BDOO
BDOO: Bases de Données objets complexes l’identité d’objet Motivation BDOO Langages d’interrogation Forces / Faiblesses BDOO: Programmation OO Bases de Données Persistance Partage Contrôle de concurrence Contrôle de récupération Sécurité Requêtes … objets complexes l’identité d’objet l’encapsulation les types ou les classes l’héritage … 8 B.Missaoui - Cours BDOO
Motivation BDOO Langages d’interrogation Forces / Faiblesses Définition « …une base de données dans laquelle les données sont stockées comme des objets dans un environnement de programmation orienté objet et qui est gérée par un système de gestion de base de données orienté objet. » BDOO B.Missaoui - Cours BDOO
Motivation BDOO Langages d’interrogation Forces / Faiblesses Historique: 1983 : La notion de SGBDOO commence à émerger avec l'élaboration du prototype Gemstone de Gemstone System Inc. (commercialisé après en 1988) 1991 : commercialisation des systèmes ObjectStore de Progress Software Corporation, O2 de O2 Technology's, Versant de Versant Corporation. ODMG, formé de vendeurs de SGBDOO, pour sortir le standard ODMG 1.0 1993 ODMG participe à la normalisation du langage de requête OQL Dissous en 2001, juste après ODMG 3.0 1995 : Le manifeste pour les SGBDOO 2000 : le pic pour les SGBDOO (déclin depuis) Regain ces derniers temps avec des projets open source comme db4o B.Missaoui - Cours BDOO
SGBDOO- Approches de développement Motivation BDOO Langages d’interrogation Forces / Faiblesses SGBDOO- Approches de développement Développer un tout nouvel ensemble Étendre un langage de BD existant Intégrer des constructions de BDOO à un langage de programmation traditionnel Proposer des bibliothèques de SGBDOO Étendre un langage OO déjà existant avec les fonctionnalités de BD B.Missaoui - Cours BDOO
Motivation BDOO Langages d’interrogation Forces / Faiblesses Caractéristiques Ces systèmes reprennent en général les concepts adoptés dans les langages de programmation orientés objet, avec les spécificités des systèmes de bases de données. De plus, les possibilités suivantes sont nécessaires à tout système pouvant être considéré comme implémentant une base de données orientée objet: – Évolution des schémas – il n'y a plus d'incompatibilité entre le langage de programmation et le langage de manipulation des données B.Missaoui - Cours BDOO
Caractéristiques: Intégration: Motivation BDOO Langages d’interrogation Forces / Faiblesses Caractéristiques: Intégration: B.Missaoui - Cours BDOO
Objets complexes et identificateur d’objet : Motivation BDOO Langages d’interrogation Forces / Faiblesses Caractéristiques: Objets complexes et identificateur d’objet : Un objet est une paire (oid , v) où oid est l’identificateur de l’objet et v est la valeur de l’objet. Les objets sont décrits par des attributs, et sont regroupés en classes. Un objet complexe est un objet qui n’est pas caractérisé par une seule valeur, mais bien par un ensemble structuré de valeurs. Un objet doit avoir une identité indépendamment de ses valeurs (au contraire d’une ligne d’un SGBDR). OID (Object IDentifier), est généré, géré par le SGBD. B.Missaoui - Cours BDOO
Caractéristiques: Structure complexe: Motivation BDOO Langages d’interrogation Forces / Faiblesses Caractéristiques: Structure complexe: La structure des objets peut être complexe: les attributs peuvent être complexes et multi-valués. La structure d'une classe est définie en employant des constructeurs: le constructeur de tuples, "TUPLE", qui crée un type tuple composé d'une suite d'attributs; le domaine d’un attribut c'est soit : -un domaine prédéfini(STRING, REAL, INT, DATE ...) incluant le type son, image, clip,… -un type défini par un constructeur, -un nom d'une classe Le constructeur d'ensembles, "SET", qui crée un type ensemble composé d'un ensemble de valeurs B.Missaoui - Cours BDOO
Caractéristiques: Navigation: Motivation BDOO Langages d’interrogation Forces / Faiblesses Caractéristiques: Navigation: Lien père-fils avec approche relationnelle Lien père –fils avec approche objet(navigation) B.Missaoui - Cours BDOO
Langages d’interrogation Motivation BDOO Langages d’interrogation Forces / Faiblesses Langages d’interrogation Dans ce domaine, il n’y a pas de solution largement répandue. On trouve: des langages de programmation orienté-objet; des langages spécifiques permettant l’interrogation directe de la base de données de façon plus déclarative. (SQL3 et ODMG) B.Missaoui - Cours BDOO
û Forces faiblesses Meilleur support pour les données complexes Motivation BDOO Langages d’interrogation Forces / Faiblesses Forces faiblesses Meilleur support pour les données complexes Représentation plus naturelle et réaliste des objets de la vie réelle Capacités de modélisation enrichies Adéquation à des applications évoluées de BD Manipulation rapide des Objets … Absence d’un modèle de données universel Manque d’expérience le SGBDR: simple,mature Complexité Concurrence commerciale ardente … û B.Missaoui - Cours BDOO
TàF: le modèle relationnel objet Travail à faire B.Missaoui - Cours BDOO
Chapitre 2: Interrogation d’une BDOO Pour la séance prochaine :) B.Missaoui - Cours BDOO