Modèles logiques et physiques
Attention à ne pas confondre les schémas logiques et physiques avec le schéma conceptuel, qui est une relation formelle des informations sans aucune notion de la technologie utilisée.
Ces différences se remarquent aussi dans les notions de modèle logique (qui présente les données selon la manière dont elles sont gérées par le SGBD) et de modèle conceptuel (qui présente les informations telles qu'elles sont perçues par l'utilisateur ou l'analyste, comme par exemple UML).
Schéma logique
Si nous traduisons le schéma conceptuel en une structure de données dépendante d'un choix technologique (base de données relationnelle, fichiers XML, etc.), nous obtenons un schéma logique.
Attention que nous parlons ici d'un choix technologique, par exemple les bases de données relationnelles, mais pas des particularités liées à son implémentation (Oracle, MySQL, etc.).
Le schéma logique est constitué des types d'enregistrements, des associations entre ces enregistrements, des champs identifiants, des champs de référence (clés étrangères), et des contraintes d'intégrité.
Schéma physique
Le schéma physique est l'interprétation du schéma logique, apportant les éléments liés aux techniques d'implémentation (Oracle, MySQL, etc.) de la technologie choisie.
Nous retrouverons dans le schéma physique la spécification des espaces de stockage, le mode de stockage, les indexes, ainsi que différents paramètres physiques.
Champs et types d'enregistrements
La cardinalité induit les notions de champ monovalué ou multivalué, et de champ facultatif ou obligatoire. Nous devons aussi prendre en compte pour un champ le fait qu'il soit atomique ou composé.
Le domaine (ou type de valeurs) d'un champ peut être « domaine technique » (en anglais, “built-in domain”), ou « défini par l'utilisateur » (en anglais, “user-domain”).
Exemples de types techniques : INTEGER, DECIMAL, CHARACTER, DATE, BLOB, etc.
Exemples de types définis par l'utilisateur : NumTVA, Adresse, etc.
Champs multivalués : ensemble
Définition
L'« ensemble » (en anglais, “set”) est une collection non ordonnée de valeurs distinctes.
Disponibilité
SGBD orientés objets.
Exemple
Chaque élève possède de 1 à 5 numéro de téléphone distincts.
L'ordre des numéro de téléphone n'a pas d'importance.
Champs multivalués : amas
Définition
L'« amas » (en anglais, “bag”) est une collection non ordonnée de valeurs non nécessairement distinctes.
Disponibilité
SGBD orientés objets.
Exemple
Chaque élève possède 1 à 10 inscriptions à des groupes de cours.
L'ordre des groupes de cours n'a pas d'importance.
Un élève peut être inscrit plus d'une fois pour un même groupe de cours.
Champs multivalués : liste
Définition
La « liste » (en anglais, “list”) est une collection ordonnée de valeurs non nécessairement distinctes.
Disponibilité
SGBD orientés objets.,LISP, Prolog
Exemple
Chaque élève peut être inscrit de 0 à 2 examens par cours.
Un élève peut s'inscrire 2 fois à un même examen s'il n'est pas satisfait de son résultat, ou s'il a échoué.
L'ordre des examens est significatif (seuls les résultats du dernier sont pris en compte).
Champs multivalués : liste unique
Définition
La « liste unique » (en anglais, “unique list”) est une collection ordonnée de valeurs distinctes.
Exemple
Chaque élève possède de 1 à 5 prénoms distincts.
L'ordre des prénoms est significatif.
Champs multivalués : tableau
Définition
Le « tableau » (en anglais, “array”) est une collection ordonnée indexée de valeurs non nécessairement distinctes.
Disponibilité
Langages de programmation tels que COBOL, Pascal, C, Java, etc.
Exemple
Chaque élève possède pour chaque trimestre un nombre de jours de présence.
Champs multivalués : tableau unique
Définition
Le « tableau unique » (en anglais, “u-array”) est une collection ordonnée indexée de valeurs distinctes.
Exemple
Un groupe d'étude est composé de 2 à 4 élèves, chacun occupant un rôle déterminé.
Tableaux de synthèse
Non structuré | Ordonné | Tableau de cellules | |
Valeurs distinctes | set | u-list | u-array |
Valeurs non distinctes | bag | list | array |
Distinct | Ordonné | Rupture de séquence | |
set | Oui | Non | Non |
bag | Non | Non | Non |
list | Non | Oui | Non |
unique list | Oui | Oui | Non |
array | Non | Oui | Oui |
u-array | Oui | Oui | Oui |
Version en cache
22/12/2024 02:55:59 Cette version de la page est en cache (à la date du 22/12/2024 02:55:59) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 10/01/2010, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/sgbdr-logique-physique.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
- ↑ SGBD : Système de Gestion de Base de Données
- ↑ Unified Modeling Language : correspond à « langage de modélisation unifié » en français
- ↑ UML : “Unified Modeling Language” (en français, « langage de modélisation unifié ») Plus d'informations sur UML title="Définition de UML">UML.
- ↑ domaine technique : correspond à “built-in domain” en anglais
- ↑ défini par l'utilisateur : correspond à “user-domain” en anglais
- ↑ ensemble : correspond à “set” en anglais
- ↑ amas : correspond à “bag” en anglais
- ↑ liste : correspond à “list” en anglais
- ↑ liste unique : correspond à “unique list” en anglais
- ↑ tableau : correspond à “array” en anglais
- ↑ tableau unique : correspond à “u-array” en anglais
Références
- IHDCB334 - Ingénérie des bases de données : Jean-Luc HAINAUT, Anne-France BROGNEAUX,
Cours d'Ingénérie des bases de données
(2003)
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.