Le schéma logique définissant l'organisation, la structure et les relations entre les données dans une base de données, incluant les tables, les colonnes, les types de données et les relations entre entités.
Un schéma de base de données sert de plan pour l'organisation et la structure d'une base de données. Il définit la manière dont les tables de la base de données sont organisées, les champs qu'elles contiennent et la manière dont ces tables sont liées les unes aux autres, ce qui permet d'accéder aux données de manière cohérente et prévisible. À mesure que les systèmes de données se complexifient, les schémas de base de données gagnent en importance. Un schéma de base de données bien conçu permet aux équipes de maintenir plus facilement les données et d'y accéder de manière fiable sur les bases de données opérationnelles, analytiques et distribuées.
En général, trois types de schémas distincts sont généralement utilisés dans la conception d'une base de données : le schéma de base de données conceptuel, le schéma de base de données logique et le schéma de base de données physique.
Sur les plateformes modernes, les schémas de base de données prennent également en charge la gouvernance centralisée et le contrôle d'accès à grande échelle, comme on le voit dans des outils tels que Unity Catalog. Pour les équipes qui travaillent avec des modèles d'architecture des données, il est essentiel de comprendre comment la conception de schémas de base de données s'aligne sur la conception plus large du système.
Un schéma de base de données est le cadre structurel qui définit la manière dont les données sont organisées, stockées et consultées au sein d'une base de données. Le terme « schéma de base de données » décrit le layout des tables de la base de données, les relations entre les entités de données et les objets de la base de données qui prennent en charge les opérations sur les données.
Les schémas de base de données définissent :
Alors que le schéma de base de données définit la structure, une instance de base de données fait référence aux données réelles stockées à un moment donné. Les schémas de base de données sont implémentés et gérés au sein de plates-formes de système de gestion de base de données telles qu'Oracle Database et les systèmes de base de données SQL.
Les schémas de base de données font également partie d'une architecture de données plus large, ce qui permet d'aligner le stockage, le traitement et la gouvernance entre les systèmes.
Une table de base de données est une structure de stockage unique utilisée pour stocker des données dans un format tabulaire de lignes et de colonnes. Elle représente une entité spécifique (par exemple, des clients, des commandes ou des produits) et stocke les données existantes.
Un schéma de base de données est la structure de l'ensemble de la base de données. Le schéma de base de données définit l'organisation des tables de la base de données, la manière dont elles sont liées et la manière dont les autres objets de la base de données sont utilisés et accessibles.
Le schéma de base de données est le plan de construction. Les tables de la base de données sont les pièces individuelles.
Dans la plupart des cas, une base de données contient plusieurs tables sous un même schéma logique. Les tables sont utilisées avec d'autres objets de schéma comme les index et les vues.
Pour en savoir plus sur la façon dont les schémas et les tables de base de données sont intégrés dans le plan de données global, consultez notre glossaire de l'architecture des données. Comprendre la relation entre la conception des schémas de base de données et les pratiques de modélisation des données est essentiel pour les concepteurs de bases de données.
Les schémas de base de données sont généralement divisés en trois types : le schéma de base de données conceptuel, le schéma de base de données logique et le schéma de base de données physique. Cette séparation permet de distinguer l'intention, la structure et la mise en œuvre, ce qui facilite la conception, la maintenance et l'évolution des bases de données. Chaque type de schéma de base de données répond à un objectif et à un groupe de parties prenantes distincts, mais ils fonctionnent ensemble dans le cadre d'un processus unifié de conception de schémas.
En pratique, cette séparation prend en charge les workflows d'ingénierie des données modernes en permettant aux équipes de faire évoluer la structure sans perturber les systèmes en aval.
Le schéma conceptuel fournit une vue de haut niveau des données. Il se concentre sur les entités métier et les relations sans détails techniques.
Points clés :
Le schéma de base de données logique est la structure de données détaillée qui représente le schéma conceptuel.
Cela inclut :
La structure de base de données logique reste indépendante de la base de données et peut suivre des approches de modélisation de données en couches telles que l'architecture médaillon.
Le schéma physique de la base de données représente la manière dont les données sont stockées et consultées dans un système de base de données.
Le schéma physique de la base de données décrit :
Ce niveau est généralement géré par un administrateur de base de données. Le schéma physique inclut des détails sur la manière dont la structure logique est implémentée sur une infrastructure de données spécifique.
Un schéma de base de données se compose de plusieurs parties principales qui fonctionnent ensemble pour stocker, récupérer et protéger les données. Les principaux composants d'un schéma de base de données sont les suivants :
Le principal endroit où les données sont stockées dans un schéma de base de données se trouve dans ses tables de base de données. Chaque colonne d'un schéma de base de données a sa propre structure de table et ses propres types de données, ce qui garantit la cohérence du stockage des données.
Outre les tables de base de données, d'autres objets de base de données peuvent être définis comme suit :
L'accès à ces objets de schéma est contrôlé par des autorisations, qui garantissent que seuls les utilisateurs autorisés de la base de données peuvent accéder aux données sensibles dans un schéma de base de données.
Pour les équipes qui travaillent avec la gouvernance des données, il est essentiel de comprendre comment les autorisations de schéma de base de données s'alignent sur des politiques de gouvernance plus larges.
Ces clés garantissent l'intégrité des données dans un schéma de base de données.
La clé primaire d'une table identifie de manière unique chaque enregistrement. Chaque ligne d'une table peut être identifiée de manière unique à l'aide d'une clé primaire. La présence d'une clé primaire garantit qu'aucune donnée en double n'est stockée dans une table. Une clé primaire entière peut être composée de clés primaires et étrangères fonctionnant ensemble.
Les clés étrangères connectent deux tables ou plus dans un schéma de base de données. Les clés étrangères se connectent à une clé primaire dans une autre table, établissant des relations entre les données associées.
Ces relations sont fondamentales dans les bases de données relationnelles et les systèmes de bases de données SQL modernes, où la fiabilité transactionnelle dépend de solides garanties de transaction ACID. L'utilisation correcte des clés primaires et étrangères garantit la cohérence des données dans l'ensemble de la base de données.
Les types de données définissent les types de valeurs autorisés dans les colonnes. Les types courants sont les suivants :
Le langage de définition de données (DDL) est utilisé pour définir ou modifier les schémas et les tables des bases de données à l'aide d'instructions de création de base de données.
Les règles sont utilisées pour ajouter des fonctionnalités de sécurité, telles que :
La définition de ces règles au niveau du schéma garantit que les bases de données sont en mesure de conserver des données exactes et de maintenir leur cohérence.
Les index et les vues sont utilisés pour améliorer les performances, l'utilisabilité et le contrôle au sein d'un schéma de base de données.
Les index sont utilisés pour améliorer les performances des requêtes en accélérant l'extraction des données des colonnes qui font l'objet de recherches fréquentes. Cependant, les index sont connus pour dégrader les performances d'écriture, car ils doivent être mis à jour chaque fois que des données sont insérées, mises à jour ou supprimées.
Les vues sont des tables virtuelles utilisées pour représenter des tables réelles, généralement pour faciliter l'écriture de requêtes ou pour limiter l'accès à des données spécifiques.
Un schéma de base de données bien conçu établit un équilibre entre les performances et la complexité, garantissant de bonnes performances tout en évitant une complexité inutile.
Les approches peuvent convenir à différents types d'activités liées aux données. Le choix de l'approche de conception du schéma dépend de la manière dont les données seront utilisées.
Le schéma en étoile est une technique simple de modélisation de données utilisée en entreposage des données. Il comprend :
Raisons d'utiliser la modélisation de données en schéma en étoile :
Le modèle de schéma en étoile est fondamental dans les architectures de data warehouse.
Dans un schéma en flocon, les données sont normalisées pour réduire les besoins en stockage en divisant les tables de dimension en plusieurs tables de dimension.
Les avantages de l'utilisation d'un schéma en flocon par rapport à un schéma en étoile sont les suivants :
Les conceptions de schémas en flocon de neige peuvent également être utilisées lorsque les données des dimensions sont partagées dans plusieurs contextes ou lorsqu'elles doivent être davantage normalisées. Les modèles de schéma en étoile et de schéma en flocon de neige impliquent tous deux une table de faits centrale entourée de tables de dimensions.
Le schéma hiérarchique est un schéma dans lequel les données sont organisées en une structure arborescente avec des relations parent-enfant, où chaque enfant n'a qu'un seul parent, selon un modèle hiérarchique.
Ce type de schéma est idéal pour les données qui ont une hiérarchie inhérente, comme une structure organisationnelle ou un document XML. Le schéma hiérarchique est moins flexible que le schéma relationnel et ne peut pas gérer les relations plusieurs-à-plusieurs. Ce schéma est toujours utilisé dans certaines applications, bien que le modèle hiérarchique ait été largement remplacé par des bases de données relationnelles.
Les bases de données NoSQL ont également des considérations relatives à la conception de schémas. Contrairement aux bases de données relationnelles, elles peuvent ne pas nécessiter de schéma avant de pouvoir se connecter à la base de données et y stocker des données.
Les modèles de conception de schémas les plus courants pour les bases de données NoSQL sont les suivants :
Ces systèmes privilégient la flexibilité et la scalabilité, mais offrent souvent moins de garanties de cohérence intégrées. Les applications modernes, y compris la recherche vectorielle et les queries de similarité, étendent encore ces compromis au sein des bases de données vectorielles. Il est important pour les concepteurs de bases de données de comprendre quand utiliser des bases de données NoSQL par rapport aux conceptions de schémas de bases de données relationnelles traditionnelles.