Télécharger la présentation
Publié parJérôme Ledoux Modifié depuis plus de 10 années
1
Oracle Orienté Objet Amanda Evans Mai 2000
2
La limite des systèmes relationnels
La limitation de la majorité des systèmes actuels sont les suivantes [Soutou99] La simplicité du modèle de données et l'existence du langage SQL déclaratif natif induisent l'interfaçage avec un langage de programmation qui permet de répondre à des contraintes de spécification complexes. De ce fait, le dialogue entre la base et le langage n'est plus directe. On parle de défaut d'impédance (impedance mismatch) La normalisation conduit à l'accroissement du nombre de relations. Ainsi, si deux objets doivent être liés en mémoire, il faut simuler ce lien au niveau de la base par un mécanisme de clés étrangères ou de tables de corrélations. Parcourir un lien implique souvent une jointure dans la base. Il en résulte un problème de performance dès que le style d'interrogation devient navigationnel: manipulation d'arbres, de graphes ou toute autre application mettant en relation un grand nombre d'objets La faible capacité de modélisation: seules les structures de données tabulaires sont permises. Il est ainsi difficile de représenter directement des objets complexes Amanda Evans
3
Les bases de données objet
Le premier SGBD objet date de Il s'agit du prototype Gemstone. L'approche suivie par ce système est simple: étendre le langage de programmation objet Smalltalk aux fonctions de SGBD Des produits commerciaux sont à présents disponibles: O2 d'Ardent Software Ontos Objectstore d'Object Design OpenODB de Hewlett-Packard Objectivity Versant, … Ces systèmes permettent d'accéder à des informations complexes avec des programmes écrits dans des langages objets. Ils concernent un segment limité du marché des SGBD Amanda Evans
4
Règles d'or d'un SGBD Objet
Pour être qualifié d'objet, un SGBD doit respecter treize règles [Soutou99] Données persistantes Contrairement aux langages de programmation où les données disparaissent lorsque le programme est arrêté, les données persistantes sont conservées. Les données persistantes et non persistantes (temporaires) sont manipulées de la même façon par un programme Grande quantité de données Le système gère l'espace mémoire secondaire en utilisant des techniques de regroupement physique, d'indexation, d'optimisation de requêtes et de gestion de cache Fiabilité des données Le système assure la cohérance des données par les contraintes d'intégrité, la sûreté de fonctionnement par des transactions et la sécurité des accès par l'affectation de privilèges Partages de données Le système est multi-utilisateur et gère des mécanismes de verrous Amanda Evans
5
Règles d'or d'un SGBD Objet
Facilité d'interrogation Le système permet à l'utilisateur d'interroger la base à l'aide d'un langage de requêtes. Le résultat d'une requête n'est pas forcément un objet d'une classe existante. Le langage offre en outre la puissance d'un langage de programmation Encapsulation Les données sont accessibles par des méthodes à différents degrés (visibilité) Objets composites Les structures de données à définir et à manipuler peuvent être complexes Identificateur d'objet L'accès aux objets s'opère directement ou par des liens inter-objets via les OID Classes, types et méthodes Le sytème permet la gestion des types abstraits de données et supporte les concepts de classes et de méthodes de l'approche objet Héritage Le système prend en charge le mécanisme d'héritage Amanda Evans
6
Règles d'or d'un SGBD Objet
Surcharge et liaison dynamique Les méthodes peuvent être surchargées. La liaison dynamique est la capacité d'établir la correspondance entre le nom d'une méthode et son implantation lors de l'exécution et non lors de la compilation Langage de programmation complet Le système dispose d'un langage de programmation qui ne nécessite pas d'opérateur externe pour écrire une application Extensibilité Le système autorise l'ajout dynamique de nouveaux types abstraits de donnée, de nouvelles classes, de nouvelles méthodes, etc. Amanda Evans
7
Bilan de la technologie objet dans les bases de données
Les SGBD objet trouvent leur origine dans les langage de programmation objet. Le principe de base de ces deux disciplines est le même: les données ne doivent être manipulées directement sans passer par une méthode. L'objectif principal de l'approche objet est d'augmenter le niveau d'abstraction. La technologie objet dans le domaine des bases de données vise à combiner les avantages des fichiers (simplicité et rapidité d'accès), des bases hiérarchiques ou réseaux (navigation entre objets) et des bases relationnelles (langage de requêtes) La technologie objet vise à réduire les différences entre le langage de programmation et la base de données d'une part, et entre le monde à modéliser et le modèle de données d'autre part. La concept objet induit ainsi une certaine idée de complémentarité entre les applications et les données stockées dans des SGBD Amanda Evans
8
Bilan de la technologie objet dans les bases de données
Les SGBD objet risquent de subir des inconvénients découlant principalement du manque de théorie dans la conception d'un schéma. Cette insuffisance s'explique par la complexité et par le manque de maturité du modèle de données Un autre point faible des SGBD objet concerne la tenue de charge des moteurs lorsque le nombre d'utilisateurs concurrents augmente d'une manière importante Amanda Evans
9
La technologie objet-relationnel
La technologie objet-relationnel est née en 1992 avec le SGBD UNISQL/X combinant un moteur relationnel et un système objet De nombreux SGBD ont suivis et tous s'orientent vers trois grands mouvements technologiques L'évolution interne du moteur de leur SGBD La connexion entre le moteur relationnnel et les moteurs spécialisés pour la manipulation de certains types de données complexes La promotion du middleware qui compose les couches au sens réseau du terme, lesquelles permettent d'interconnecter des applications à des SGBD hétérogènes Les éditeurs de SGBDR tendent à intégrer la technologie objet-relationnelle en préservant la totalité des fonctions de leur SGBDR; ils proposent des concepts qui font le succès de l'approche objet et des nouveaux types de données afin de mieux répondre à la demande du marché Amanda Evans
10
SGBD objet-relationnel
Un SGBD objet-relationnel doit selon Stonebraker prendre en compte les quatre mécanismes suivants L'extension des types de données Les objets complexes (en terme de structures de données) L'héritage Les systèmes de règles Amanda Evans
11
Le modèle de données Le modèle de données objet-relationnel est une extension du modèle de données relationnel Une des principales extensions consiste à manipuler des structures de données complexes incluant Des pointeurs (facilitent la navigation) Des tables imbriquées (permettent de s'affranchir de la règle de la première forme normale) Les objets sont stockés dans des tables objets-relationnelles qui présentent des caractéristiques semblables au modèle de données NF2 (Non First Normal Form) Une table au modèle NF2 peut contenir un attribut qui est composé d'une liste de valeurs Amanda Evans
12
Exemple Amanda Evans
13
Exemple Amanda Evans
14
Oracle8 et l'objet-relationnel
Oracle 8 est le premier serveur objet-relationnel d'Oracle Un des objetifs d'Oracle est de disposer de produits permettant le développement du commerce électronique basé sur un mécanisme transactionnel L'architecture d'Oracle est un montage trois tiers Le client (navigateur Internet) Le serveur applicatif (exécutable) Le serveur de base de données Oracle ne met pas encore en oeuvre le mécanisme d'héritage dans la version 8.0.x Amanda Evans
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.