INTRODUCTION AUX BASES DE DONNÉES OBJET-RELATIONNELLES RELATIONNEL VS. OBJET-RE

INTRODUCTION AUX BASES DE DONNÉES OBJET-RELATIONNELLES RELATIONNEL VS. OBJET-RELATIONNEL Introduction • Le développement des SGBD objet s’est rapidement heurté à la nécessité de conserver la compatibilité avec l’existant. En effet, la fin des années 80 a vu le déploiement des SGBD relationnels et des applications client-serveur. Les utilisateurs n’étaient donc pas prêts à remettre en cause ces nouveaux systèmes dès le début des années 90. • Cependant, les tables relationnelles ne permettaient guère que la gestion de données alphanumériques. Avec l’avènement du Web au milieu de la décennie 90, la nécessité de supporter des données complexes au sein de la base de données s’est amplifiée. Ces données complexes peuvent être des documents textuels, des données géométriques ou géographiques, audiovisuelles ou soniques. En bref, il s’agit de supporter de manière intelligente des données multimédia. © O.Lamouchi 2 RELATIONNEL VS. OBJET-RELATIONNEL Rappels sur le modèle relationnel ! le schéma définit la structure de la relation ! les n-uplets représentent les différents éléments ! Les tables respectent des propriétés définies sur les dépendances fonctionnelles (en général, troisième forme normale (3NF) ) Avantages du modèle relationnel et des SGBD relationnels ! Organisation structurée des données ! Permanence des données ! Accessibilité par des utilisateurs concurrents ! Bien implanté dans le monde professionnel. © O.Lamouchi 3 RELATIONNEL VS. OBJET-RELATIONNEL Caractéristiques du modèle Relationnel Objet Inconvénients du modèle relationnel ! Absence de pointeurs visibles: pour lier des données qui se correspondent, on a besoin de faire des jointures (opérations coûteuses) ! Non support des domaines composés: on ne peut pas avoir pas exemple un attribut qui correspond à une adresse avec le numéro de la rue, le nom de la rue, la ville, ... =>Impossible à cause de la première forme normale, qui impose l’atomicité des attributs ! Pas d’opérations définies sur les données " On veut donc un SGBD capable de traiter • des éléments de structure complexe • des opérations sur les éléments • des pointeurs reliant les éléments (pour de l’héritage par exemple) => Ces notions correspondent à la philosophie objet : il nous faut des SGBD objet. © O.Lamouchi 4 RELATIONNEL VS. OBJET-RELATIONNEL Caractéristiques du modèle Relationnel Objet • On veut un modèle qui intègre des éléments de structure complexe • Une relation sera en NF2 (Non First Normal Form) et pourra contenir un attribut composé d’une liste de valuers ou de plusieurs attributs. © O.Lamouchi 5 RELATIONNEL VS. OBJET-RELATIONNEL Caractéristiques du modèle Relationnel Objet # Par rapport au modèle relationnel standard : ! on a moins besoin d’aplatir les données, ici on a une seule table avec des tables imbriquées au lieu de 3 tables ! on a moins besoin de faire des jointures pour récupérer les informations sur les accidents du contrat 1111, on accède simplement à l’attribut accidents. # Les types utilisés dans les BDO sont : ! les types standards existant dans les BD classiques : VARCHAR, NUMBER... ! les types utilisateurs • définis par le concepteur de la base • utilisés comme des types standards ! On appelle aussi ces types utilisateurs des types objet car ils ont une structure complexe et peuvent contenir des opérations (méthodes). © O.Lamouchi 6 RELATIONNEL VS. OBJET-RELATIONNEL Pour permettre une migration graduelle du modèle relationnel vers le modèle objet-relationnel pour les systèmes existants, la norme prévoit que ce dernier assure une comptabilité ascendante totale avec le précédent. ☛ Toutes les possibilités du modèle relationnel sont aussi utilisables dans le modèle objet-relationnel. Comment il est possible de représenter les associations dans le modèle objet-relationnel? © O.Lamouchi 7 RELATIONNEL VS. OBJET-RELATIONNEL Exemple: Il s’agit de modéliser les différentes configurations d’un réseau local ainsi que les affectations de machines aux utilisateurs. Nous faisons les hypothèses suivantes: • Afin que deux machines situées sur deux segments différents puissent communiquer, elles doivent passer par une passerelle, ce qui est modélisé par l’association « est relié/relie » de type 1-N. La classe Interface représente la carte réseau à laquelle est connecté le segment; • Sur une machine peuvent être installés plusieurs logiciels. Dans le cas de terminaux, il n’y a aucun logiciel! D’autre part, un logiciel peut être installé sur plusieurs machines. Il s’agit donc bien d’une association N-N; • Dans cette exemple, on va supposer qu’une personne possède sa propre machine et qu’elle ne peut accéder à aucune autre. Il s’agit ici d’une association 1-1. © O.Lamouchi 8 RELATIONNEL VS. OBJET-RELATIONNEL © O.Lamouchi 9 RELATIONNEL VS. OBJET-RELATIONNEL Association 1-1 => l’association entre les postes de travail ainsi de leurs utilisateurs. Solution avec le modèle relationnel Solution avec le modèle objet-relationnel  Remplacer la clé étrangère par un pointeur (la référence de l’objet) directement sur le tuple concerné (accès direct au tuple associé). © O.Lamouchi 10 RELATIONNEL VS. OBJET-RELATIONNEL Association 1-n => l’association entre les tables segment et poste Solution avec le modèle relationnel Solutions avec le modèle objet-relationnel 1)  Solution classique: utilisation de deux tables dont l’une contient une table imbriquée. Chaque tuple de la table imbriquée fait référence à un tuple de l’autre table. © O.Lamouchi 11 RELATIONNEL VS. OBJET-RELATIONNEL Association 1-n (suite) ⇒ l’association entre les tables segment et poste Solutions avec le modèle objet-relationnel 2)  Utilisation d’une seule table(imbrication totale) + Recherches plus rapides (une seule table pas de jointure); + Gain de place; + Bien adapté pour les associations 1 à N dans lesquelles les objets fils n’ont pas d’éxistance propre. - On ne peut pas ajouter de fils sans que ceux-ci ne soient rattachés à un père; - L’évolution de la base est plus difficile et même parfois compromise. © O.Lamouchi 12 RELATIONNEL VS. OBJET-RELATIONNEL Association n-n => Les installations des logiciels Solution avec le modèle relationnel © O.Lamouchi 13 RELATIONNEL VS. OBJET-RELATIONNEL Association n-n (la suite) ⇒ Les installations des logiciels Solutions avec le modèle objet-relationnel 1)  Utilisation de 3 tables (2+1) dont l’une contient ou pas une ou plusieurs tables imbriquées.  On peut définir des privilèges sur les attributs de l’association. (par exemple ici on a définie code comme privilégié)  Lors de la sélection d’un tuple on aura: - d’abord accès à une des clés étrangères (la plus privilégiée) - ensuite à la suivante en accédant à la table imbriquée - et ainsi de suite… © O.Lamouchi 14 RELATIONNEL VS. OBJET-RELATIONNEL Association n-n (la suite) ⇒ Les installations des logiciels Solutions avec le modèle objet-relationnel 2)  Utilisation de 2 tables dont l’une contient une ou des tables imbriquées.  Définir une table imbriquée contenant les attributs de la table matérialisant l’association moins l’identifiant de la table mère. © O.Lamouchi 15 RELATIONNEL VS. OBJET-RELATIONNEL Conclusion • L’extension du modèle objet-relationnel est impressionnante.  Le modèle objet-relationnel ne possède pas de bases théoriques comme en possède le modèle relationnel. La modélisation n’est donc pas aussi bien maîtrisée. • Le concepteur a la possibilité de choisir parmi différentes options et cela selon ses goûts.  La responsabilité revient au concepteur de ne choisir que ce qui est bon dans l’approche objet en laissant de côté ce qui pourrait rendre la base incohérente. © O.Lamouchi 16 uploads/Ingenierie_Lourd/ copie-de-sgbd-bdor1-pdf.pdf

  • 27
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager