Definition

Base de données multimodèle

Cette définition fait partie de notre Guide Essentiel : Le Grand Guide des Bases de Données (part. 2) : au-delà du relationnel

Une base de données multimodèle est une plate-forme de traitement de données qui prend en charge plusieurs modèles de données. Les modèles définissent les paramètres d'organisation des informations dans une base de données. La possibilité d'intégrer différents modèles dans une même base de données permet aux informaticiens et autres utilisateurs de répondre aux différents besoins des applications, sans avoir à déployer plusieurs systèmes de base de données.

Les bases de données multimodèles prennent en charge les modèles relationnels, hiérarchiques et orientés objet, ainsi que les documents, les graphes, les colonnes et les paires clé-valeur, ces derniers appartenant à la famille NoSQL. Les fournisseurs de bases de données proposent chacun différentes combinaisons de modèles de données, obligeant les acheteurs potentiels à rechercher les technologies adaptées à leurs propres besoins en matière d'applications.

Contrairement aux systèmes cantonnés au modèle relationnel, qui domine le marché, les bases de données multimodèle ne stockent pas uniformément les données dans une structure de table composée de lignes. Elles sont ainsi capables de gérer différents types de données incompatibles avec le schéma relationnel traditionnel, très rigide. C'est par exemple le cas des données non structurées et semi-structurées. L'approche multimodèle peut cependant limiter l'intégrité transactionnelle à laquelle ont recours les systèmes de gestion de base de données relationnelles (SGBDR) pour assurer la précision et la cohérence des données.

Le modèle relationnel, avec ses interfaces de programmation en langage de requête structurée (SQL, Structured Query Language), s'est progressivement imposé dans l'informatique d'entreprise, dans les années qui ont suivi son développement par le chercheur IBM E. F. Codd en 1970.

Mais d'autres types de bases de données ont continué à faire des adeptes. Au milieu des années 2000, de nouveaux modèles de données ont vu le jour. Ils ont coïncidé avec le développement, par les grandes entreprises Internet et d'autres organisations, d'une vaste gamme d'applications informatiques distribuées, dont un nombre croissant fait appel à des formes de Big Data qui ne se prêtent pas aux bases de données relationnelles.

Parmi ces récents types de bases de données issus de l'ère du Big Data et du Cloud computing, notons les nombreuses formes de bases de données NoSQL. L'adoption croissante de logiciels NoSQL a ravivé le concept de « persistance polyglotte », selon lequel les entreprises ont intérêt à combiner plusieurs technologies pour stocker les différents types de données qu'elles génèrent et collectent. Or, les bases de données multimodèles contribuent à simplifier de tels environnements.

Le terme de « multimodèle » est apparu alors même que les fournisseurs de NoSQL ont commencé à intégrer différents modèles de données dans leurs produits. Mais il convient de mentionner également les précurseurs de cette technologie. Ainsi, la base de données MarkLogic prend en charge plusieurs modèles de données, tels que document, graphe ou relationnel. Fondée en 2001, la société qui a donné son nom à sa base de données a devancé l'essor du NoSQL, même si elle joue désormais dans la cour des fournisseurs de produits NoSQL. Par ailleurs, InterSystems propose à la fois des modèles de type objet et relationnel dans son logiciel Caché. Cette base de données multidimensionnelle a été commercialisée pour la première fois en 1997.

Plus récemment, des sociétés connues pour leurs bases de données NoSQL, telles que Couchbase, DataStax et Basho Technologies, entre autres, se sont également mises au multimodèle. Ainsi, la base de données Couchbase Server prend en charge les modèles de type document et relationnel.

DataStax, qui commercialise une version de la base de données open source Apache Cassandra nommée DataStax Enterprise, a associé un modèle de données clé-valeur et un modèle en colonne, avant d'ajouter la prise en charge des documents et des graphes. La recherche textuelle est de plus en plus souvent considérée comme un modèle de données, pris en charge par certains moteurs NoSQL. C'est le cas de la base de données Riak, développée par Basho, qui combine les paires clé-valeur, les objets et la recherche.

Certaines bases de données relationnelles parmi les plus utilisées adoptent elles aussi l'approche multimodèle, même si elles demeurent avant tout de type relationnel. Ainsi, Oracle, Microsoft et IBM ont progressivement intégré la prise en charge de nombreux types de données dans leurs bases de données relationnelles : XML, JSON, systèmes d'information géographique, graphes, et bien d'autres.

Cette définition a été mise à jour en octobre 2019

Pour approfondir sur Base de données