Un modèle de base de données illustre la structure logique d'une base de données, y compris les relations et les contraintes qui déterminent comment les données peuvent être stockées et accessibles. Les modèles de base de données individuels sont conçus en fonction des règles et concepts du modèle de données plus général adopté par les concepteurs. La plupart des modèles de données peuvent être représentés par un diagramme de base de données.
Temps de lecture : 9 min
Vous souhaitez créer votre propre diagramme de base de données ? Essayez Lucidchart. C'est une solution rapide, facile et complètement gratuite.
Types de modèles de bases de données
Il existe de nombreux types de modèles de bases de données. Parmi les plus courants :
- Modèle de base de données hiérarchique
- Modèle relationnel
- Modèle réseau
- Modèle de base de données orientée objet
- Modèle entité-association
- Modèle document
- Modèle entité-attribut-valeur
- Schéma en étoile
- Le modèle relationnel-objet, qui associe les deux éléments qui composent son nom
Vous pouvez choisir de représenter une base de données selon l'un de ces modèles en fonction de plusieurs facteurs. Le plus important est de savoir si le système de gestion de base de données que vous utilisez prend en charge un modèle particulier. En effet, la plupart sont pensés pour un modèle de base de données particulier et exigent des utilisateurs qu'ils adoptent ce modèle, mais certains prennent en charge plusieurs modèles.
En outre, tous les modèles ne s'appliquent pas à toutes les étapes du processus de conception d'une base de données. Les modèles de bases de données conceptuelles généralistes sont les plus indiqués pour cartographier les relations entre les données de façon à faciliter la compréhension de ces données. Les modèles logiques basés sur les enregistrements sont eux davantage axés sur la manière dont les données sont stockées sur le serveur.
Vous devez également choisir un modèle dont les points forts correspondent à vos priorités pour la base de données, que ces priorités soient la rapidité, la réduction des coûts, la simplicité d'utilisation ou autre chose.
Examinons de plus près certains des modèles de bases de données les plus courants.
Modèle relationnel
Le modèle le plus courant, appelé modèle relationnel, trie les données dans des tables, que l'on appelle aussi des relations, dont chacune se compose de colonnes et de lignes. Chaque colonne contient un attribut de l'entité en question, comme le prix, le code postal ou la date de naissance. L'ensemble des attributs d'une relation est appelé domaine. La clé primaire est constituée par un attribut spécifique ou une combinaison d'attributs. On peut y faire référence dans d'autres tables : elle est alors appelée clé étrangère.
Chaque ligne, également appelée tuple, comprend des données sur une instance spécifique de l'entité en question, comme un employé en particulier.
Le modèle tient également compte des types de relations entre ces tables, notamment les relations un-à-un, un-à-plusieurs et plusieurs-à-plusieurs. Voici un exemple :
Dans la base de données, les tables peuvent être normalisées ou amenées à se conformer aux règles de normalisation dans une optique d'amélioration de sa flexibilité, de sa polyvalence et de son évolutivité. Dans une base de données normalisée, chaque donnée est atomique, ou éclatée en morceaux utiles les plus petits possible.
Les bases de données relationnelles sont généralement écrites en langage SQL (Structured Query Language). Ce modèle a été introduit en 1970 par E.F. Codd.
Modèle hiérarchique
Le modèle hiérarchique organise les données dans une structure arborescente, où chaque enregistrement dispose d'un seul parent (racine). Les enregistrements frères et sœurs sont triés dans un ordre particulier. Cet ordre est suivi pour le stockage physique de la base de données. Ce modèle convient à la description de nombreuses relations du monde réel.
Il a surtout été utilisé par les systèmes de gestion d'information d'IBM dans les années 60 et 70, qui ont aujourd'hui majoritairement disparu en raison de certaines inefficacités opérationnelles.
Modèle réseau
Le modèle réseau est une extension du modèle hiérarchique qui autorise des relations plusieurs-à-plusieurs entre des enregistrements liés, ce qui implique plusieurs enregistrements parents. Basé sur la théorie mathématique des ensembles, ce modèle s'articule autour d'ensembles d'enregistrements connexes. Chaque ensemble se compose d'un enregistrement propriétaire (ou enregistrement parent) et d'un ou plusieurs enregistrements membres (ou enfants). Un enregistrement peut être un membre ou un enfant dans plusieurs ensembles, ce qui permet à ce modèle de traduire des relations complexes.
Son pic de popularité remonte aux années 70, après qu'il a été officiellement défini par la conférence sur les langages de systèmes de traitement de données (Conference on Data Systems Languages, CODASYL)
Modèle de base de données orientée objet
Ce modèle définit une base de données comme une collection d'objets, ou d'éléments logiciels réutilisables, associés à des caractéristiques et des méthodes. Il existe plusieurs types de bases de données orientées objet :
Une base de données multimédia réunit des médias, tels que des images, qui ne peuvent pas être stockés dans une base de données relationnelle.
Une base de données hypertextuelle permet à n'importe quel objet d'être relié à un autre. Elle est utile pour organiser de nombreuses données disparates, mais peu adaptée à l'analyse numérique.
Le modèle de base de données orienté objet est le modèle de base de données post-relationnelle le plus connu, car il intègre des tables, sans toutefois s'y limiter. Ces modèles sont aussi connus sous le nom de modèles de bases de données hybrides.
Vous souhaitez créer votre propre diagramme de base de données ? Essayez Lucidchart. C'est une solution rapide, facile et complètement gratuite.
Créer un diagramme de base de donnéesModèle relationnel-objet
Ce modèle de base de données hybride associe la simplicité du modèle relationnel à certaines des fonctionnalités avancées du modèle de la base de données orientée objet. En substance, il permet aux concepteurs d'intégrer des objets dans la structure bien connue des tables.
Les langages et interfaces d'appel comprennent SQL3, les langages des fournisseurs, ODBC, JDBC et les interfaces d'appel propriétaires qui sont des extensions des langages et des interfaces utilisés par le modèle relationnel.
Modèle entité-association
Ce modèle reproduit les relations entre les entités du monde réel de façon très similaire au modèle réseau, mais il n'est pas lié aussi directement à la structure physique de la base de données. Il est souvent utilisé pour la création d'une base de données d'un point de vue conceptuel.
Ici, les personnes, les lieux et les objets à propos desquels les points de données sont stockés sont appelés entités, chacune d'entre elles possédant certains attributs qui, ensemble, composent leur domaine. On schématise aussi la cardinalité (relations entre les entités).
L'une des formes courantes du diagramme entité-association est le schéma en étoile, dans lequel une table centrale des faits se connecte à plusieurs tables dimensionnelles.
Autres modèles de bases de données
Divers autres modèles de bases de données ont été ou sont encore utilisés aujourd'hui.
Modèle de fichier inversé
Une base de données créée selon une structure de fichier inversé est conçue pour accélérer les recherches en texte intégral. Dans ce modèle, le contenu des données est indexé sous la forme d'une série de clés dans une table de recherche, dont les valeurs indiquent l'emplacement des fichiers associés. Cette structure peut fournir des rapports quasi instantanés dans le domaine des Big Data ou de l'analytique, par exemple.
Ce modèle est utilisé par le système de gestion de base de données ADABAS de Software AG depuis 1970, et il est encore pris en charge aujourd'hui.
Modèle de base de données orientée texte
Le modèle de base de données orientée texte est le plus ancien et le plus simple. Il énumère simplement toutes les données dans une seule table, composée de colonnes et de lignes. Pour accéder aux données ou les manipuler, l'ordinateur doit lire l'intégralité du fichier plat dans la mémoire, ce qui rend ce modèle inefficace, sauf pour les ensembles de données les plus petits.
Modèle multidimensionnel
Il s'agit d'une variante du modèle relationnel conçue pour améliorer le traitement analytique. Alors que le modèle relationnel est optimisé pour le traitement transactionnel en ligne (OLTP), ce modèle est conçu pour le traitement analytique en ligne (OLAP).
Chaque cellule d'une base de données dimensionnelle contient des données sur les dimensions suivies par la base de données. Visuellement, elle ressemble à un ensemble de cubes plutôt qu'à des tables en deux dimensions.
Modèle semi-structuré
Dans ce modèle, les données structurelles habituellement contenues dans le schéma de base de données sont intégrées aux données elles-mêmes. La distinction entre les données et le schéma est donc pour le moins vague. Ce modèle est utile pour décrire les systèmes, comme certaines sources de données sur le Web, que l'on traite comme des bases de données, mais qui ne peuvent pas s'adapter à un schéma. Il est également utile pour décrire des interactions entre des bases de données qui ne respectent pas le même schéma.
Modèle contextuel
Ce modèle peut incorporer des éléments provenant d'autres modèles de bases de données selon les besoins. Il réunit des éléments des modèles orienté objet, semi-structuré et réseau.
Modèle d'association
Ce modèle divise tous les points de données selon qu'ils décrivent une entité ou une association. Dans ce modèle, une entité désigne tout élément qui existe de façon indépendante, alors qu'une association désigne tout élément qui n'existe que par rapport à un autre élément.
Le modèle d'association structure les données en deux ensembles :
- Un ensemble d'éléments, chacun ayant un identificateur unique, un nom et un type
- Un ensemble de liens, chacun ayant un identificateur unique et les identificateurs uniques d'une source, d'un verbe et d'une cible. Le fait stocké est en lien avec la source, et chacun des trois identificateurs peut faire référence soit à un lien, soit à un élément.
Parmi les autres modèles de bases de données moins courants :
- Le modèle sémantique, qui comprend des informations sur la façon dont les données stockées sont rattachées au monde réel
- La base de données XML, qui permet aux données d'être spécifiées et même stockées au format XML
- Le graphe nommé
- Le triplestore
Modèles de bases de données NoSQL
Outre le modèle de base de données orienté objet, d'autres modèles non SQL sont venus s'opposer au modèle relationnel :
Le modèle de base de données orienté graphe, qui est encore plus flexible qu'un modèle réseau, car il permet la connexion entre tous les nœuds, quels qu'ils soient.
Le modèle multivaleur, qui se distingue du modèle relationnel en permettant aux attributs de contenir une liste de données plutôt qu'un seul point de données.
Le modèle orienté document, qui est conçu pour stocker et gérer des documents ou des données semi-structurées plutôt que des données atomiques.
Bases de données sur le Web
La plupart des sites Web s'appuient sur un type de base de données pour organiser et présenter des données aux utilisateurs. Chaque fois qu'un visiteur utilise les fonctions de recherche sur ces sites, ses termes de recherche sont transformés en requêtes qu'un serveur de base de données va traiter. En règle générale, un middleware (ou intergiciel) connecte le serveur Web à la base de données.
L'omniprésence des bases de données leur permet d'être utilisées dans presque tous les domaines, des boutiques en ligne au micro-ciblage d'un segment des électeurs dans le cadre d'une campagne politique. Divers secteurs ont développé leurs propres normes pour la conception de bases de données, des transports aériens aux constructeurs automobiles.