Cloud Data Database

Définition object-oriented database management system (OODBMS)

Object-oriented database management system (OODBMS)

⌚: 4 minutes

Un système de gestion de base de données orienté objet (OODBMS), parfois abrégé en ODBMS pour « object database management system », est un système de gestion de base de données (SGBD) qui prend en charge la modélisation et la création de données en tant qu’objets. Cela inclut une certaine forme de prise en charge des classes d’objets et l’héritage des propriétés de classe et des méthodes par les sous-classes et leurs objets.

Il n’existe pas de norme largement acceptée pour ce qui constitue un SGBDO, bien que le groupe de gestion des données d’objets (ODMG) ait publié en 2001 la norme ODMG 3.0 qui décrit un modèle d’objet ainsi que des normes pour définir et interroger les objets. Le groupe s’est depuis lors dissout.

Actuellement, les systèmes de bases de données  NoSQL sont une alternative populaire à la base de données d’objets. Bien qu’elles n’aient pas toutes les capacités d’un véritable ODBMS, les bases de données documentaires NoSQL fournissent un accès par clé à des données semi-structurées sous forme de documents, en utilisant généralement la notation d’objet JavaScript (JSON).

Caractéristiques d’une ODBMS

Dans le document poussé par la communauté, The Object-Oriented Database Manifesto, Malcolm Atkinson et d’autres définissent un ODBMS comme suit :

  • Un système de base de données orienté objet doit répondre à deux critères :
    • il doit être un SGBD
    • il doit être compatible avec la culture actuelle des langages de programmation orientés objet.
  • Le premier critère se traduit par cinq caractéristiques :
    • la persistance
    • la gestion du stockage secondaire
    • la simultanéité
    • la récupération
    • posséder une fonction d’interrogation ad hoc
  • Le second se traduit par huit caractéristiques :
    • objets complexes
    • identité des objets
    • encapsulation
    • types ou classes
    • héritage
    • surcharge combinée
    • extensibilité
    • complétude du calcul

SGBDR contre SGBD

Les systèmes de gestion de bases de données relationnelles (SGBDR) sont actuellement le type de SGBDR qui est le plus largement déployé. L’abstraction relationnelle des lignes et des colonnes accessibles à l’aide du langage SQL (Structured Query Language) est bien comprise par la plupart des professionnels de l’informatique.

En revanche, les systèmes de bases de données d’objets peuvent être mieux adaptés au stockage et à la manipulation de relations de données complexes. Il peut être plus difficile pour les applications d’accéder à des données comportant de nombreuses relations stockées dans plusieurs tables d’un SGBDR que d’accéder aux données en tant qu’objet dans un SGBD.

En outre, de nombreux développeurs utilisent des langages de programmation orientés objet (OOP) (tels que Java, C++, Python et autres) pour construire des applications. L’utilisation d’un SGBDR pour stocker et récupérer des objets nécessite des conversions entre des objets complexes et des lignes provenant de plusieurs tables de bases de données relationnelles. Les outils de cartographie relationnelle d’objets (ORM) peuvent simplifier cet effort, mais n’éliminent pas le surcroît de travail que représente la cartographie.

L’avantage du SGBD lors de l’écriture d’applications utilisant l’approche OOP est la suppression des décalages; c’est-à-dire que le programme gère et travaille avec des objets au lieu de lignes de données qui doivent être combinées en un objet.

De nombreux fournisseurs de SGBDR ont étendu leur offre au système de gestion de base de données relationnelle par objet . Bien entendu, la superposition de certains concepts orientés objet à des bases de données relationnelles ne permet pas d’obtenir l’ensemble des fonctionnalités d’un ODBMS.

Ecrire un commentaire