Cours Systèmes d’information et bases de données

Systèmes d’information et bases de données (niveau 1)
Cours N°1
Violaine Prince
Plan du cours
1. Bibliographie
2. Introduction aux bases de données
3. Les modèles
1. Hiérarchique
2. Réseau
3. Relationnel
4. Objet
1.bibliographie
n A. Mesguich, B. Normier « comprendre les bases de données ». Masson, 1982.
n A. Flory « Bases de données. Conception et réalisation ». Economica, 1982.
n G. Gardarin « Bases de données. Les systèmes et leurs langages ». Eyrolles 1984.
n ACSIOME « Modélisation dans la conception des systèmes d’information ». Masson, 1988, 1990.
2.Introduction aux bases de données
n Définition: ensemble structuré de données sous-tendu par un modèle. Les données sont enregistrées sur des supports accessibles par l’ordinateur. Elles représentent des informations sur le monde réel. Cet ensemble peut être interrogé et mis à jour par des utilisateurs.
2.Introduction aux bases de données
n Remarques:
n Une base de données est plus qu’un ensemble de fichiers
n Les données sont des éléments textuels et/ou numériques, pas des structures.
n Les ensembles de données peuvent ne pas être des bases.
n Les bases documentaires ne se comportent pas comme des bases de données.
Différences (1)
n Différenciation entre bases de données et fichiers
Différences (2)
n BASES DE n BANQUES DE
DONNEES DONNEES
n Structuration et n Structuration non modèles obligatoires nécessaire
n Volume indifférent n Volume important
Différences (3)
n BASES DE DONNEES
n Données uniquement
n Gestion selon les contraintes d’intégrité
n BASES DE
CONNAISSANCES
n Données et règles de composition des données
n Gestion des règles contradictoires
Bases de données déductives
n Bases d’information généralisées
n Information quelconque, multimedia
n Structurées, semi-structurées
n On réserve le terme de base de données aux ensembles de données texte/numériques obéissant à des modèles particuliers (notamment le modèle relationnel).
Historique(1)
n Jusqu’à 1965 : uniquement des systèmes de fichiers
n À partir de 1965 : création d’une notion de « superstructure unique » , hiérarchisée (modèle hiérarchique)
Inconvénient : consommation excessive de temps et d’espace pour la gestion de l’ensemble.
Historique(2)
n Vers 1968 : nécessité de mise en place d’un modèle (modèle réseau)
n 1971: recommandations de Codd; naissance du modèle relationnel. Jonction avec l’algèbre relationnelle de Tarski.
n En 1984: 1500 bases de données accessibles au public (160 en France).
n À partir de 1984 : miniaturisation de véritables SGBD relationnels (systèmes de gestion de bases de données). Intégration sur les microordinateurs.`
Historique(3)
n Vers 1988 : introduction des premières bases de données objet.
n Après 1990 : les bases de données déductives ne « prennent » pas. Les bases de connaissances et les bases de données co-existent.
n Avec l’arrivée du Web (1995): généralisation des SGBD relationnels. Notion de SGBD serveur. Retour et généralisation des bases documentaires.
Historique(4)
n Vers 1998: UML se répand. La modélisation orientée objet intègre le relationnel.
n Depuis 2000 : le Web mélange toutes les formes de stockage : ontologies (structures hiérarchisées de connaissances), bases de données relationnelles (couche « basse »), bases de données objets (pour les applications), bases documentaires.
qu’est-ce qu’un SGBD ?
n Un système de gestion de bases de données (SGBD)met à la disposition de l’utilisateur un outil pour décrire l’ensemble des données à stocker (langage de description des données ou LDD) et lui permet de dialoguer avec la base pour rechercher, sélectionner, et modifier des données (Langage de manipulation des données ou LMD).
qu’est-ce qu’un SGBD ?
n Ces deux outils (LDD, LMD) doivent vérifier les propriétés suivantes :
n Indépendance
n Non redondance des données
n Maintien de la cohérence des données
(contrainte d’intégrité) n Concurrence d’accès
3. Les modèles
n Les bases de données sont structurées d’après des modèles.
n Un modèle (informatique) est une abstraction dont les propriétés assurent :
n La « programmabilité » de la structure proposée
n L’intégrité (toute action sur le modèle se répercute sur les données)
n La cohérence (les données ne sont pas contradictoires, manquantes, floues ou incertaines…)
n Un modèle se juge sur :
n Sa validité
n Sa qualité
n Un modèle est dit valide si et seulement si il obéit aux règles de conception qui sont fournies avec la technique de modélisation
n La qualité d’un modèle est définie comme une évaluation :
n De sa complétude par rapport au problème
n De son optimisation
n De sa flexibilité
n Historiquement, les modèles des bases de données ont été définis comme suit, dans l’ordre chronologique :
n Modèle hiérarchique (structure de données
« arbre »)
n Modèle réseau (structure de données « graphe »)
n Modèle relationnel (structure de données
« tableau de n-uplets »)
n Modèle objet (structure de données « classes, attributs, méthodes »)
modèle hiérarchique
Une base de données hiérarchique est une base de données dont le système de gestion lie les enregistrements dans une structure arborescente où chaque enregistrement n'a qu'un seul possesseur.
Les structures de données hiérarchiques ont été utilisées dans les premiers systèmes de gestion de base de données de type mainframe.
3.1Le modèle hiérarchique
Modèle conceptuel associé
Pour un nœud donné, un seul nœud père Chaque nœud est une famille d’objets.
n Termes employés :
n Field (Champ) - la plus petite unité de donnée
n Segment - groupe de champs; nœud d'une structure arborescente
n Data base record - une collection de segments liés ; une structure arborescente particulière
n Data base (base de données) - ensemble de 'data base records’
n Data base description - désigne la manière dont les 'data base records' sont définis ; ensemble d'instructions du langage de macro propriétaire
n Termes employés (suite)
n Root (racine) le premier 'segment’
n Sequence field - un champ de chaque 'segment' utilisé pour organiser les autres champs de même type
n Quelques bases connues de bases de données hiérarchiques :
n ADABAS,(AG Software, fin des années 1970)
n IMS (IBM, 1966 pour le programme APollo)
n System 2000 (1967)
Exemple :
Modèle conceptuel hiérarchique
musée
n Inconvénients : la représentation arborescente ne décrit pas toujours la réalité. n Exemple :
n Modèle hiérarchique : un module d’enseignement n’appartient qu’à un seul diplôme
n Modèle « réel » : un module d’enseignement peut être validé dans plusieurs « diplômes ».
3. Les modèles 3.1 Le modèle hiérarchique
Etat actuel du modèle hiérarchique
n ADABAS et IMS fonctionnent toujours. Le premier réalise aujourd’hui des recherches à grande vitesse.
n La vision hiérarchique est réapparue dans les ontologies (IA, Web).
n Elle est limitée aux seules relations de type « un à plusieurs », inclusion de classes.
3. Les modèles
3.2 le modèle réseau
n SGBD Socrate (CII 1973) n Modèle CODASYL :
n TOTAL (Cincom 1978)
n IDMS (Cullinet 1978)
n IDS2 (CII-HB 1978)
n On part du modèle hiérarchique mais on en modifie les nœuds et les relations.
3. Les modèles 3.2 Le modèle réseau
n Les entités peuvent être des objets statiques ou dynamiques n Exemples :
n Un professeur enseigne un ou plusieurs matières, une matière n’est enseignée que par un seul professeur.
n Un étudiant étudie une ou plusieurs matières. Une matière est étudiée par un ou plusieurs étudiants.
Etudiant |
1 1
« classe » |
Entité intermédiaire
Pour représenter les Liens plusieurs à plusieurs
n On est obligé de passer par une entité « intermédiaire » , la classe par permet de représenter en outre le fait qu’un professeur enseigne à des « classes ».
n Modélisation de type « SOCRATE » :
n On signale le lien réciproque pour expliciter l’orientation de l’arc.
professeur |
La matière est
Hiérarchiquement Dépendante du professeur
n Un prof enseigne plusieurs matières, une matière est enseignée par plusieurs profs.
3. Les modèles 3.2 Le modèle réseau
formalisme de description
n PROF « anneau »
n Nom
n Prénom
n Statut
n PROFENSEIGNE LIEN [REFERE ENSPROF DE ENSEIGNEMENT]
n ENSEIGNEMENT
n ENSPROF LIEN REFERE PROFENSEIGNE DE PROF
n ENSMAT LIEN REFERE MATENSEIGNE DE MATIERE
3. Les modèles 3.2 Le modèle réseau
formalisme de description
n MATIERE « anneau »
n Nom
n Coeff
n Durée globale
n …
n MATENSEIGNE LIEN [REFERE ENSMAT DE ENSEIGNEMENT]
3.2 Le modèle réseau
n Avantages : peut représenter des liens plusieurs à plusieurs
n Inconvénient : lourd, doit passer par des entités intermédiaires pour représenter ces liens. Sont-elles nécessaires ?
n Modèle précurseur du modèle entitéassociation.
3.3 Le modèle relationnel
n Modèle relationnel binaire ou n-aire (1970)
n Modèle relationnel binaire
n Tables constituées de N-uplets
n Les noms de colonnes sont des « rubriques »
n Les tables sont des multi-ensembles sur lesquels on peut définir des opérateurs algébriques
(algèbre relationnelle)
n Les tables peuvent être « évaluées » en terme de qualité : notion de normalisation
n Le modèle relationnel binaire sera traité dans un cours
3.4 Le modèle objet
n Détermine au départ un langage de programmation (1982, Smalltalk)
n L’idée est que la description (l’objet) détermine les actions (méthodes)
n L’organisation en « base de données » est relativement récente
n Les objets sont classés les uns par rapport aux autres (relations de classe)
n Une démarche objet évoluée sera proposée dans un cours sur UML
Réflexions sur les modèles
n Tous les modèles ne sont pas au même niveau.
n Modèles conceptuels
n Modèles logiques
n Modèles physiques
n Certains modèles présentent plusieurs versions selon les niveaux
n Plus un niveau est élevé, plus son expressivité peut être grande.
Reflexions sur les modèles
n Les modèles conceptuels
n Sont au niveau d’abstraction le plus élevé
n Sont intermédiaires entre le problème et sa programmation : non programmables directement
n Peuvent être compatibles avec des modèles de niveau égal ou différent
n Peuvent être très expressifs : ils permettent de dialoguer avec les utilisateurs
Reflexions sur les modèles
n Les modèles logiques
n Sont au niveau d’abstraction médian
n Sont intermédiaires entre le niveau conceptuel et le modèle physique des données
n Ne sont compatibles qu’avec des modèles de rang inférieur ou supérieur dans le même paradigme
n Sont beaucoup moins expressifs pour l’utilisateur final
n Servent à exprimer des contraintes logiques
Reflexions sur les modèles
n Les modèles physiques
n Sont au niveau d’abstraction le plus bas
n Sont directement accessibles par les programmes
n Ne sont compatibles qu’avec des modèles de rang supérieur dans le même paradigme
n Ne sont pas expressifs pour l’utilisateur final
n Servent à exprimer des contraintes de format des données