UML 2 pour les bases de données
10
© Éditions Eyrolles
●
Assurer l’indépendance données/traitements de manière à avoir le moins possible à modifier
les programmes si la structure de la base évolue.
●
Description de l’information, ce qui inclut la gestion de l’espace disque, la structure des
données stockées et le dictionnaire des données.
●
Partage de l’information entre différents utilisateurs. Assurer cette fonction entraîne, pour
le système, la mise en place d’un grand nombre de techniques qui découlent de la gestion
des accès concurrents (mise en place de verrous, programmation de transactions et résolution
des éventuels interblocages) et de la confidentialité (tous les utilisateurs n’auront pas les
mêmes prérogatives).
●
Préservation de la cohérence des données dans le temps. Cet aspect des choses inclut
notamment la programmation des règles de gestion du système d’information du côté de la
base et non pas dans les programmes d’application (par exemple, il faudra vérifier, avant
chaque vol, que les pilotes sont à jour de leurs licences pour le type d’avion utilisé). La
fonction de cohérence inclut aussi tous les aspects relatifs à la sécurité en cas de panne
matérielle ou logicielle. Enfin, l’archivage est assuré par le SGBD (backup) de même que
la technique de restauration (recovery).
Modèle de données
Bien que le modèle de données relationnel repose sur des concepts simples (relations, clés et
dépendances fonctionnelles pour les principales), il permet néanmoins de modéliser artificiellement des données complexes. Le modèle relationnel est fondé sur de solides bases théoriques, car
il propose des opérateurs issus de la théorie des ensembles. De plus, on peut appliquer des
techniques de normalisation. La programmation de ces concepts est assurée par le langage SQL
normalisé par l’ISO depuis 1986.
Les liens entre les relations, qui sont des tables au niveau de la base de données, ne font plus
intervenir de chaînages physiques comme le faisaient les SGBD précédents (hiérarchiques et
réseaux), mais des pointeurs logiques fondés sur des valeurs contenues dans les colonnes.
Nous verrons que les liens sont réalisés par les clés primaires (primary keys) et par les clés
étrangères (foreign keys). Pour cette raison, le modèle relationnel est dit « modèle à valeurs ».
Structure des données
La figure suivante décrit le contenu d’une base de données relationnelle, qui représente le fait
que des pilotes puissent travailler pour le compte de différentes compagnies. Nous détaillerons
ce modèle de données au chapitre 2.
La contrainte référentielle est vérifiée si chaque valeur contenue dans une clé étrangère se
retrouve en tant que clé primaire d’une autre table. La majorité des SGBD du marché prennent
en charge automatiquement cette contrainte, très utile pour gérer la cohérence entre tables.
10
© Éditions Eyrolles
●
Assurer l’indépendance données/traitements de manière à avoir le moins possible à modifier
les programmes si la structure de la base évolue.
●
Description de l’information, ce qui inclut la gestion de l’espace disque, la structure des
données stockées et le dictionnaire des données.
●
Partage de l’information entre différents utilisateurs. Assurer cette fonction entraîne, pour
le système, la mise en place d’un grand nombre de techniques qui découlent de la gestion
des accès concurrents (mise en place de verrous, programmation de transactions et résolution
des éventuels interblocages) et de la confidentialité (tous les utilisateurs n’auront pas les
mêmes prérogatives).
●
Préservation de la cohérence des données dans le temps. Cet aspect des choses inclut
notamment la programmation des règles de gestion du système d’information du côté de la
base et non pas dans les programmes d’application (par exemple, il faudra vérifier, avant
chaque vol, que les pilotes sont à jour de leurs licences pour le type d’avion utilisé). La
fonction de cohérence inclut aussi tous les aspects relatifs à la sécurité en cas de panne
matérielle ou logicielle. Enfin, l’archivage est assuré par le SGBD (backup) de même que
la technique de restauration (recovery).
Modèle de données
Bien que le modèle de données relationnel repose sur des concepts simples (relations, clés et
dépendances fonctionnelles pour les principales), il permet néanmoins de modéliser artificiellement des données complexes. Le modèle relationnel est fondé sur de solides bases théoriques, car
il propose des opérateurs issus de la théorie des ensembles. De plus, on peut appliquer des
techniques de normalisation. La programmation de ces concepts est assurée par le langage SQL
normalisé par l’ISO depuis 1986.
Les liens entre les relations, qui sont des tables au niveau de la base de données, ne font plus
intervenir de chaînages physiques comme le faisaient les SGBD précédents (hiérarchiques et
réseaux), mais des pointeurs logiques fondés sur des valeurs contenues dans les colonnes.
Nous verrons que les liens sont réalisés par les clés primaires (primary keys) et par les clés
étrangères (foreign keys). Pour cette raison, le modèle relationnel est dit « modèle à valeurs ».
Structure des données
La figure suivante décrit le contenu d’une base de données relationnelle, qui représente le fait
que des pilotes puissent travailler pour le compte de différentes compagnies. Nous détaillerons
ce modèle de données au chapitre 2.
La contrainte référentielle est vérifiée si chaque valeur contenue dans une clé étrangère se
retrouve en tant que clé primaire d’une autre table. La majorité des SGBD du marché prennent
en charge automatiquement cette contrainte, très utile pour gérer la cohérence entre tables.
