Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

1 Intro BD2018

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 38

Bases de données

Introduction et
Objectifs
Sylvie Despres
2017-2018
sylvie.despres@univ-paris13.fr

Introduction
l  Au début de l’informatique
l  Systèmes pour calculer
l  Tendance actuelle
l  Gestion de très grande quantité de données
l  Nombre de données disponibles et moyens de les
diffuser en progression constante
l  Accroissement lié au World Wide Web
l  Comment stocker et manipuler ces données ?

1
Qu’est-ce qu’une donnée ?
l  Donnée
l  Mesures de température relevées chaque jour dans une station météo
l  Description élémentaire, typiquement numérique pour nous, d’une réalité
l  Information
l  Courbe donnant l’évolution dans le temps de la température moyenne dans un
lieu
l  Obtention de l’information en organisant les données
l  Connaissance
l  Le fait que la température sur Terre augmente en fonction de l’activité humaine
l  Compréhension du sens de l’information, permet d’aboutir à des
connaissances
l  « faits » considérés comme vrais dans l’univers d’un locuteur
l  « lois » (des règles logiques) de cet univers

Représentation des données


l  Séquence de bits
l  bit : prend la valeur 0 ou 1
l  1 octet est une séquence de 8 bits
l  1 caractère est représenté avec un octet

l  Exemple
l  Représentation de la position d’un ascenseur dans un immeuble de six
étages avec 3 bits :
l  000 pour le rez-de-chaussée
l  001 pour le premier
l  …
l  110 pour le sixième (le nombre 6 en base 2)
4

2
Introduction
l  Les entreprises gèrent des volumes de données très grands
l  Giga (109 ou 230), Tera (1012 ou 240), Péta octets (1015)
l  Numériques, Textuelles, Multi-média (images, films, ... )

http://www.bipm.org/fr/measurement-units/

l  Il faut pouvoir facilement


l  Archiver les données sur des mémoires secondaires permanentes
l  Retrouver les données pertinentes à un traitement
l  Mettre à jour les données variant dans le temps 5

Introduction
l  Les données sont structurées et identifiées
l  Données élémentaires
l  Votre salaire
l  Votre note en BD
l  Données composées
l  Votre CV
l  Vos résultats de l'année
l  Identifiant humain
l  NSS ou machine : P26215

3
Quelques applications
l  Gestion d'entreprise (stocks, personnels, clients, …)
l  Banques (comptes, emprunts, …)
l  Systèmes de réservation (avions, trains, spectacles, …)
l  Bibliothèques, vidéothèques, médiathèques, …
l  Bureautique (agendas, répertoires, photos, courriers, …)
l  Géographie (cartes routières, cartes maritimes, …)
l  Informatique (programmes, documentations, …)
l  Domaine de la santé, recherche médicale, …

Rôle d’une base de données


l  Central
l  Applications conventionnelles grand compte
l  Gestion de la paye, facturation, gestion de stocks
l  Système d’aide à la décision
l  Historique
l  Gestion de l’évolution au cours du temps
l  Caractéristiques
l  Gros volume de données sur des types d’information de nature
alphanumérique
§  Numéro de compte, Montant, Date, etc.

4
Rôle d’une base de données
l  Essentiel
l  Mise en place de
l  Système d’information et de communication via le web
§  Site d’information dynamique avec stockage d’information
§  Stockage de profils utilisateur pour faire de la surveillance et contrôle

l  Accessoire
l  Application très ciblée
l  XAO, Système Expert (peu de données, nombreuses règles)
l  Application personnelle
l  Faible volume de données
l  Problème crucial
l  Stockage des données
9

Type de stockage des données


l  Mémoire centrale
l  Stockage temporaire des données
l  Pas d’utilisation directe d’une BD
l  Petit volume de données (environ 1 Gigaoctet)
l  Accès via un langage de programmation
l  En général mono utilisateur
l  Pas une solution pour stocker de manière
persistante des gros volumes de données

10

5
Utilisation de fichiers
l  Stockage persistant sur un disque
l  Gros volume de données
l  Langage de programmation connotation fortement
orientée informatique
l  Primitive offerte par les ordinateurs gestion de fichiers
(SGF)
l  En général contexte mono utilisateur même si
possibilité d’avoir des SE gérant des aspects
concurrents

11

Mémoire : taille et temps d’accès

l  Un accès disque est environ 100,000 fois plus lent qu’un accès mémoire !

l  Eviter les accès disques


l  Grande mémoire principale
l  Amortir les accès disques
l  Placement des données
l  Minimiser le nombre d’accès disques 12
l  Méthodes d’accès

6
Problématique
l  Gestion d’une BD
l  Nécessité de stocker les données de manière persistante
sur un disque
l  Fichier
l  Etre capable de gérer des gros volumes de données
l  Fichier
l  Mais prise en compte des aspects multi-utilisateurs
§  Ajout de couches supplémentaires au SE pour
§  Rendre le côté multi utilisateurs transparent
§  Assurer la mise à disposition des données une fois qu’une session de
travail se termine

13

Systèmes de fichiers Caractéristiques

Comptabilité Chirurgie

Problèmes

Consultations Psychiatrie

7
Format des fichiers Caractéristiques
Plusieurs applications
è  Plusieurs formats
Dupont Dupond è  Plusieurs langages
Turlututusqjsk
Symptomes : y Symptom: yyyy
Turlututu : sqj Analyses xxxx
Symptomes : y
Turlututu : sdd Turlututudhjsd
Analyses : xxx Analyses :xx

Problèmes
è  Difficultés de gestion

Duhpon Duipont
Turlututu : sq

Symptomes : yy Symptomyyyy
Analyses : xxxx Analysesxxxx

Symptomes : yy Turlututudhjsd

Redondance des données Caractéristiques


Plusieurs applications
è  Plusieurs formats
Dupont Dupond è  Plusieurs langages
Turlututusqjsk
Symptomes : y Symptom: yyyy

Redondance de données
Turlututu : sqj Analyses xxxx
Symptomes : y
Turlututu : sdd Turlututudhjsd
Analyses : xxx Analyses :xx

Problèmes
è  Difficultés de gestion
è  Incohérence des données

Duhpon Duipont
Turlututu : sq

Symptomes : yy Symptomyyyy
Analyses : xxxx Analysesxxxx

Symptomes : yy Turlututudhjsd

8
Interrogation Caractéristiques
Plusieurs applications
è  Plusieurs formats

ChiruSoft
ComptaSoft
Dupont Dupond è  Plusieurs langages
Turlututusqjsk
Symptomes : y Symptom: yyyy

Redondance de données
Turlututu : sqj Analyses xxxx
Symptomes : y
Turlututu : sdd Turlututudhjsd
Analyses : xxx Analyses :xx

Pas de facilité d’interrogation


è  Question ⇒ Développement

Problèmes
è  Difficultés de gestion
è  Incohérence des données
è  Coûts élevés
è  Maintenance difficile
PsychiaSoft
ConsultSoft

Duhpon Duipont
Turlututu : sq

Symptomyyyy
Symptomes : yy
Analysesxxxx
Analyses : xxxx
Turlututudhjsd
Symptomes : yy

Pannes Caractéristiques
Plusieurs applications
è  Plusieurs formats
ChiruSoft
ComptaSoft

Dupont Dupond è  Plusieurs langages


Turlututusqjsk
Symptomes : y Symptom: yyyy

Redondance de données
Turlututu : sqj Analyses xxxx
Symptomes : y
Turlututu : sdd Turlututudhjsd
Analyses : xxx Analyses :xx

Pas de facilité d’interrogation


è  Question ⇒développement
Redondance de code

Problèmes
è  Difficultés de gestion
è  Incohérence des données
è  Coûts élevés
è  Maintenance difficile
PsychiaSoft
ConsultSoft

Duhpon Duipont
Turlututu : sq è  Gestion de pannes ???
Symptomyyyy
Symptomes : yy
Analysesxxxx
Analyses : xxxx
Turlututudhjsd
Symptomes : yy

9
Partage des données Caractéristiques
Plusieurs applications
è  Plusieurs formats

ChiruSoft
ComptaSoft
Dupont Dupond è  Plusieurs langages
Turlututusqjsk
Symptomes : y Symptom: yyyy

Redondance de données
Turlututu : sqj Analyses xxxx
Symptomes : y
Turlututu : sdd Turlututudhjsd
Analyses : xxx Analyses :xx

Pas de facilité d’interrogation


è  Question ⇒ développement
Redondance de code

Problèmes
è  Difficultés de gestion
è  Incohérence des données
è  Coûts élevés
è  Maintenance difficile
PsychiaSoft
ConsultSoft

Duhpon Duipont
Turlututu : sq è  Gestion de pannes ???
Symptomyyyy
Symptomes : yy
Analyses : xxxx
Analysesxxxx

Turlututudhjsd
è  Partage des données ???
Symptomes : yy

Confidentialité Caractéristiques
Plusieurs applications
è  Plusieurs formats
ChiruSoft

Plusieurs langages
ComptaSoft

Dupont Dupond è 


Turlututusqjsk
Symptomes : y Symptom: yyyy
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses xxxx

Turlututudhjsd
Redondance de données
Analyses : xxx Analyses :xx

Pas de facilité d’interrogation


è  Question ⇒ développement

Redondance de code

Problèmes
è  Difficultés de gestion
è  Incohérence des données
è  Coûts élevés
è  Maintenance difficile
PsychiaSoft
ConsultSoft

Duhpon Duipont
Turlututu : sq
è  Gestion de pannes ???
Symptomes : yy
Analyses : xxxx
Symptomyyyy
Analysesxxxx è  Partage des données ???
Turlututudhjsd

è  Confidentialité ???


Symptomes : yy

10
L’approche « Bases de Données »
l  Modélisation des données
è  Eliminer la redondance de données
è  Centraliser et organiser correctement les données
è  Plusieurs niveaux de modélisation
è  Outils de conception

l  Logiciel «Système de Gestion de Bases de


Données»
è  Factorisation des modules de contrôle des applications
è  Interrogation, cohérence, partage, gestion de pannes, etc…
è  Administration facilitée des données
21

Qu'est-ce qu'une BD?

l  BD - Base de données

l  Une collection de données structurées reliées par


des relations interrogeable et modifiable par des
langages de haut-niveau

22

11
Qu’est-ce qu’un SGBD ?

l  SGBD - Système de Gestion de Bases de Données

l  Logiciel assurant


l  Structuration et stockage des données
l  Consultation et mises à jour des données d’une BD
l  Concurrence des accès
l  Reprise sur pannes
l  Intégrité des données sécurité
l  Maintenance
l  etc.

23

Modélisation du réel

Réel

• Indépendant du
Modèle modèle de données
• Indépendant du
conceptuel SGBD Médecin effectue Visite

• Dépendant du
Modèle modèle de données
Codasyl Relationnel Objet XML
• Indépendant du
logique SGBD

Modèle • Dépendant du
modèle de données
•  Organisation physique des données
•  Structures de stockage des données
physique • Dépendant du SGBD •  Structures accélératrices (index)
24

12
Modélisation Relationnelle (1)
Champs, attributs,
Relation ou table colonnes

Id-D Nom Prénom


1 Dupont Pierre
2 Durand Paul
3 Masse Jean
…. …….. ……

Tuples, lignes ou n-
uplets
25

Modélisation Relationnelle (2)


Docteurs Prescriptions
Id-D Nom Prénom Id-V Ligne Id-M Posologie
1 Dupont Pierre 1 1 12 1 par jour
Visites
2 Durand Paul 1 2 5 10 gouttes
Id-D Id-P Id-V Date Prix
3 Masse Jean 2 1 8 2 par jour
1 2 1 15 juin 250
…. …….. …… 2 2 12 1 par jour
1 1 2 12 août 180
2 2 3 13 juillet 350 2 3 3 2 gouttes

2 3 4 1 mars 250 …. …. …. …………

Patients
Id-P Nom Prénom Ville Médicaments
1 Lebeau Jacques Paris Id-M Nom Description
2 Troger Zoe Evry 1 Aspegic 1000 ……………………………..
3 Doe John Paris 2 Fluisédal ……………………………..
4 Perry Paule Valenton 3 Mucomyst ……………………………..
…. ……. ……. ……. …. …….. ……………………………..
26

13
Objectifs des SGBD

I- Indépendance
Physique

X - Standards II- Indépendance


Logique

IX - Gestion de la III – Langage de


confidentialité manipulation

VIII - Concurrence BD IV - Gestion des


d’accès vues

VII - Gestion des V - Optimisation des


pannes questions

VI - Gestion de la
cohérence

27

Architecture ANSI/X3/SPARC
l  Norme ANSI/X3/ SPARC proposée en 1975
l  Normalisation d’un cadre d’organisation des SGBD
l  Séparation de la définition logique des données de leur
organisation réelle sur support physique

l  Modèle théorique en trois niveaux


l  Niveau externe
l  Perception de la BD par un groupe d’utilisateurs
indépendamment des autres
§  Notion de vue
l  Niveau conceptuel
l  Implémentation du schéma conceptuel des données
§  Description de la structure de la BD
§  Contraintes associées aux données et aux relations
l  Niveau interne ou physique
l  Définition
§  Politique de stockage et de placement des données
§  Organisation physique des fichiers et méthodes d’accès 28

14
29

Niveau externe

l  Deux services


l  Bibliothèque
l  Gestion des emprunts de livres
l  Direction
l  Gestion des inscriptions

l  Services indépendants


l  Besoin d’accéder aux données les concernant
l  Notion de vue
l  Autant de vues que d’applications
l  Chaque vue à son vocabulaire spécifique
l  Elève : emprunteur pour la bibliothèque ; inscrit pour la scolarité
l  Problème possible pour l’administrateur de la base
l  Penser à gérer les homonymies et les synonymies
30

15
Niveau conceptuel

l  Niveau logique


l  Indépendant de l’organisation des données en mémoire
l  Représentation de la globalité des données
31

Niveau interne

l  Représentation de la manière dont les données sont stockées et organisées

32

16
Niveau physique et logique
l  Fichier étudiant unique
l  (Nom, Prénom, N°SS, Date Naissance, Année)
l  Deux types d’accès au fichier
l  Direct par son Nom
l  Séquentiel par N°SS
l  Approche classique
l  Implémentation choisie
l  H-code sur les noms
l  Ensemble d’enregistrements chaînés par N°SS
l  Ecriture de programmes d’applications
l  Modification de l’implémentation physique implique la réécriture des
applications
33

I - Indépendance Physique
l  Réaliser l’indépendance entre la structure de stockage
(niveau physique) et la structure de données
l  Indépendance des programmes d'applications relativement au
modèle physique
l  Possibilité de
§  Modifier les structures de stockage (fichiers, index, chemins d'accès, …)
§  Sans modifier les programmes

l  Ecriture des applications par des non-spécialistes des fichiers et des
structures de stockage

l  Meilleure portabilité des applications et indépendance vis à vis du matériel

34

17
II- Indépendance Logique
Autoriser plusieurs visions différentes de différents groupe de travail sur la même base
Les applications peuvent définir des vues logiques de la BD

Gestion des médicaments Cabinet du Dr. Masse


Nombre_Médicaments Prescription
Id - V Ligne Id - M Posologie
Id-M Nom Description Nombre Visites
1 1 12 1 par jour
Id - D Id - P Id - V Date Prix
1 2 5 10 gouttes
1 Aspegic 1000 …………………………….. 30 1 2 1 15 juin 250
…. …. …. …………
2 3 4 1 mars 250
2 Fluisédal …………………………….. 20
Patients
3 Mucomyst …………………………….. 230 Id - P Nom Prénom Médicament
1 Lebeau Jacques Id - M Nom Description
…. …….. …………………………….. ….. 2 Troger Zoe 1 Aspegic 1000 ……………………………..

…. ……. ……. 2 Fluisédal ……………………………..


3 Mucomyst ……………………………..
…. …….. ……………………………..

Docteur Prescription
Id-D Nom Prénom Id-V Ligne Id-M Posologie
1 Dupont Pierre
Visites 1 1 12 1 par jour
2 Durand Paul 1 2 5 10 gouttes
Id-D Id-P Id-V Date Prix
3 Masse Jean 2 1 8 2 par jour
1 2 1 15 juin 250
…. …….. …… 2 2 12 1 par jour

35
1 1 2 12 août 180
2 2 3 13 juillet 350 2 3 3 2 gouttes

2 3 4 1 mars 250 …. …. …. …………

Patients
Id-P Nom Prénom Médicament
1 Lebeau Jacques Id-M Nom Description
2 Troger Zoe 1 Aspegic 1000 ……………………………..
3 Doe John 2 Fluisédal ……………………………..
4 Perry Paule 3 Mucomyst ……………………………..
…. ……. ……. …. …….. ……………………………..

Avantages de l’indépendance logique


l  Possibilité
l  Ignorer pour chaque application les besoins des autres
(bien que partageant la même BD).
l  Faire évoluer la base de données sans réécriture des
applications
l  Ajout de champs, ajout de relation, renommage de champs

l  Intégrer des applications existantes sans modifier les


autres
l  Limiter les conséquences du partage
l  Données confidentielles.
36

18
III - Manipulation aisée
l  La manipulation se fait via un langage déclaratif
l  La question déclare l’objectif sans décrire la méthode
l  Le langage suit une norme commune à tous les SGBD
l  SQL : Structured Query Langage

l  Sémantique
l  Logique du 1er ordre ++
l  Syntaxe (aperçu !)
SELECT <structure des résultats>
FROM <relations>
WHERE <conditions>
37

IV – Des vues multiples des données


l  Vue
l  Permet d’implémenter l’indépendance logique en permettant de
créer des relations virtuelles
l  Vue = Question stockée
l  Le SGBD stocke la définition et non le résultat
l  Exemple :
l  La vue des patients parisiens
l  La vue des médecins avec leurs patients
l  La vue des services statistiques
l  ...

38

19
V –Exécution et Optimisation
l  Traduction automatique des questions déclaratives en
programmes procéduraux
l  Utilisation de l’algèbre relationnelle

l  Optimisation automatique des questions


l  Utilisation de l’aspect déclaratif de SQL
l  Gestion centralisée des chemins d'accès (index, hachages, …)
l  Techniques d’optimisation poussées

l  Economie de l'astuce des programmeurs


l  Milliers d'heures d'écriture et de maintenance de logiciels
39

VI - Intégrité Logique

l  Objectif : Détecter les mises à jour erronées

l  Contrôle sur les données élémentaires


l  Contrôle de types
l  Nom alphabétique
l  Contrôle de valeurs
l  Salaire mensuel entre 5 et 50kf
l  Contrôle sur les relations entre les données
l  Relations entre données élémentaires
l  Prix de vente > Prix d'achat
l  Relations entre objets
l  Un électeur doit être inscrit sur une seule liste électorale
40

20
Contraintes d’intégrité

l  Avantages
l  Simplification du code des applications
l  Sécurité renforcée par l'automatisation
l  Mise en commun des contraintes

l  Nécessite
l  Un langage de définition de contraintes d'intégrité
l  La vérification automatique de ces contraintes
41

VII - Intégrité Physique


l  Motivations : Tolérance aux fautes
l  Transaction Failure : Contraintes d'intégrité, Annulation
l  System Failure : Panne de courant, Crash serveur ...
l  Media Failure : Perte du disque
l  Communication Failure : Défaillance du réseau

l  Objectifs
l  Assurer l'atomicité des transactions
l  Garantir la durabilité des effets des transactions commises

l  Moyens
l  Journalisation : Mémorisation des états successifs des données
l  Mécanismes de reprise
42

21
Transaction
Incohérence possible...
Etat cohérent Etat cohérent

Begin Commit
Transaction

!!
Begin!
CEpargne = CEpargne - 3000!
CCourant = CCourant + 3000!
Commit T1!
43

Atomicité

!
!!
Panne
Begin!
CEpargne = CEpargne -
3000!
CCourant = CCourant +
3000!
Commit T1!
!
!
! Annuler le débit !!!
44

22
Durabilité
!
!
Begin!
CEpargne = CEpargne - 3000!
CCourant = CCourant + 3000!
Commit T1!
!
Crash disque

! S’assurer que le virement a été fait !!

45

VIII - Partage des données

BD

•  Accès concurrent aux mêmes données


•  Conflits d’accès !!
46

23
Isolation et Cohérence

BD

•  Le SGBD gère les accès concurrents


•  Chacun à l’impression d’être seul (Isolation)
•  Cohérence conservée (Pas de mise à jour conflictuelle)
47

IX – Confidentialité
l  Objectif
l  Protéger les données de la BD contre des accès non autorisés

l  Deux niveaux


l  Connexion restreinte aux usagers répertoriés (mot de passe)
l  Privilèges d'accès aux objets de la base

l  Usagers
l  Usager ou groupe d’usagers

l  Objets
l  Relation, Vue, autres objets (procédures, etc.)
48

24
X - Standardisation
l  L’approche bases de données est fondée sur plusieurs
standards
l  Langage SQL (SQL1, SQL2, SQL3)
l  Communication SQL CLI (ODBC / JDBC)
l  Transactions (X/Open DTP, OSI-TP)

l  Force des standards


l  Portabilité
l  Interopérabilité
l  Applications multi sources …

49

3. Architecture des SGBD


l  Architectures physiques de SGBD sont très liées au mode de
répartition
l  BD centralisée
l  BD client/serveur
l  BD client/multi-serveurs
l  BD répartie
l  BD hétérogène
l  BD mobile
l  Le challenge se déplace des Péta-bases aux Pico-bases
l  Péta-bases => parallélisme et grandes mémoires
l  Pico-bases => faible empreinte et forte sécurité

50

25
Architecture centralisée

Terminaux passifs

réseau

Mainframe
Appli 1 Appli 2 Appli n

SGBD

données
51

Architecture client-serveur

Clients intelligents

Appli 1
Appli 2
Appli n réseau

serveur

SGBD

code données

26
Architecture Client-Multiserveurs

Appli 1
SQL SQL

ODBC ODBC

SQL
SQL

SGBD 1 SGBD 2

code données code données 53

Architecture répartie

Appli 1
Appli 2
Appli n

SGBD 1 SGBD 2

code données code données

27
Architecture mobile

Clients intelligents
mobiles

Données répliquées
et/ou personnelles Réseau sans fil

serveur

SGBD

code données

Applications traditionnelles des SGBD


l  OLTP (On Line Transaction Processing)
l  Cible des SGBD depuis leur existence
l  Banques, réservation en ligne ...
l  Très grand nombre de transactions en parallèle
l  Transactions simples

l  OLAP (On Line Analytical Processing)


l  Entrepôts de données, DataCube, Data Mining …
l  Faible nombre de transactions
l  Transactions très complexes
56

28
Quelques exemples de SGBD
l  (O)RDBMS
l  Oracle
l  Microsoft
l  Access (inclus dans Office), SQL Server
l  IBM
l  DB2
l  Les libres
l  MySQL, PostgreSQL
l  OODBMS
l  O2
57

Acteurs autour d’un SGBD


l  Consultant/Analyste
l  Analyse des activités et des flux d’information du monde réel à
modéliser
l  Construction du modèle conceptuel de données
l  Concepteur
l  Traduction du modèle de données en un modèle logique exploitable
par le SGBD
l  Administrateur
l  Responsable du fonctionnement général du SGBD
l  Création de compte, gestion des droits d’accès, …
l  Développeurs d’application et Utilisateurs
58

29
Evolution des besoins
l  1960
Mémoire Coûteuse
Applications Gestion Stock
Données Alphanumérique
l  2000
Mémoire Bon marché
Applications CAO, Génomique, Muti-média
Données Alphanumérique, image, son, vidéo
Besoins Tera-octets : 1012 octets
59

Evolution des BD
BD BD BD « légères » PicoDBMS
d’entreprise personnelles (PDA / Tél.) carte à puce

Capacité

Prix

Nombre

60

30
Un peu d'histoire
l  Avant 1960
l  Système de gestion de fichiers
l  Accès séquentiel, direct, séquentiel indexé

l  Comment stocker les informations d’Apollo (1950-1960) ?


l  Approche fondée sur des fichiers
l  Fichiers reliés par des pointeurs
l  Le programme gère les fichiers
l  Structure du stockage visible
l  Dépendance donnée – programme
l  Problèmes de maintenance
l  Lenteur
61

Un peu d'histoire
l  Avant 1960
l  Système de gestion de fichiers
l  Accès séquentiel, direct, séquentiel indexé

62

31
Un peu d'histoire
l  Années 60 l  Modèle hiérarchique
l  COBOL l  Classification hiérarchique des
l  Modèle hiérarchique IMS/IBM données
l  IMS : Information Managment System l  Arborescence descendante
l  Conçu et utilisé pour le programme Appolo de la NASA l  Pointeurs entre les différents
enregistrements
l  Très lié à l’organisation des fichiers sur un disque
l  Récipients logique de données èFichiers sur disque
§  Enregistrements liés dans une structure arborescente
l  Accès séquentiel puis sur clé
§  Lire (Nomf, Article), Ecrire (Nomf, Article)
§  Lire (Nomf, Article, Clé), Ecrire (Nomf, article, Clé)
l  Accès navigationnel aux données
l  IMS
l  Archétype du SGBD hiérarchique
§  Écrit avec le langage DL/1, Data language One) d'IBM, 1966

63

Un peu d'histoire
l  1960-1970
l  Approche navigationnelle [Bachman]
l  A base de fichiers gérés par des arborescence de pointeurs

l  Redondance limitée


l  Parcours toujours depuis la racine un enregistrement à la fois : encore couteux
l  Premiers vrais SGBD
l  Approche toujours utilisée (IDS2, IMS2, PHOLAS) 64

32
Un peu d'histoire
l  Années 70
l  Avènement des Bases de Données Réseaux (BD)
l  CODASYL en 1971
l  Le modèle réseau
§  Charles Bachman
§  Prix Turing 1973 avec IDS (qui était distribué en France par
Bull) puis IDMS
§  Les diagrammes de Bachman permettait de modéliser
l  Ensemble de fichiers reliés par des pointeurs
l  Langage d'interrogation par navigation
l  Accès aux données navigationnel

l  Modèle réseau


l  Proche du modèle hiérarchique
l  Liaisons transversales permises
l  Pointeurs entre les différents enregistrements
l  Structure permettant les références cycliques

65

Modèles hiérarchique et réseau


l  Avantage
l  Simples
l  Inconvénients
l  Incohérence des données : redondance de l’information
l  Coûts élevés
l  Nécessitent de la place mémoire avec la gestion de pointeurs
l  Maintenance difficile
l  Modifier, ajouter et effacer sont des opérations complexes
l  Destruction d’un nœud entraîne celle de tous ses fils
l  Possibilité de perte d’information en supprimant des données
l  Difficultés de gestion
l  Pas de gestion de panne
l  Pas de partage des données
l  Pas de confidentialité
66

33
Un peu d'histoire
l  1973 Publication de Edgar Franck Codd d’IBM
l  A Relational Model of Data for Large Shared Data
Banks
l  Stockage des données hétérogènes dans des
tables
l  A l’époque considéré comme un curiosité
intellectuelle
l  A l’origine du modèle relationnel

l  1976 Entité-relation

67

Un peu d'histoire
l  Années 80
l  Avènement des Bases de Données Relationnelles (BDR)
l  Relations entre ensemble de données
l  Langage d'interrogation par assertion logique
l  Un modèle est dit relationnel dans la mesure où il permet de
l  Parcourir la structure des données empruntant des chemins non
prédéfinis, constitués en dynamique par des requêtes

l  Modèle relationnel


l  Données stockées sous forme de tables
l  Théorie mathématique des relations
l  Lien entre tables par concepts clés

Relations : DEPARTEMENT, PROJET, EMPLOYE, EMP-


Liens entre les relations : lignes dessinées en pointillé
Il n'est plus nécessaire de décrire explicitement les liens, les chemins d'accès
sont indépendants de la modélisation 68

34
Un peu d'histoire
l  Années 90
l  La notion de base de données objet se précise
l Atkinson
§  Publication du manifeste The Object-Oriented
Database System Manifesto
l  Relationnel étendu

l  Modèle Objet


l  Données stockées sous forme d’objets
l  Structures appelées classes
l  Champs sont des instances des
classes

69

Un peu d’histoire
l  Année 2000
l  Web, PHP/MySQL
l  Bases de données réparties
l  Déploiement des réseaux et augmentation de leurs débits
l  Répartition des données sur plusieurs sites géographiques

70

35
Un peu d’histoire
l  Année 2000
l  Entrepôt de données ou Datawarehouse
l  Bases de données récapitulatives
l  Permet un accès homogène à l’ensemble des données

71

Un peu d’histoire
l  2010 …
l  NoSQL (Not only SQL en anglais)
l  Système clé-valeur, avec une base de données pouvant se résumer
topologiquement à un simple tableau associatif avec des millions voire des
milliards d'entrées

72

36
Arbre généalogique des BD
http://fadace.developpez.com/sgbdcmp/story/

73

BD et informatique médicale
l  UMLS
l  Unified Medical Language System
l  https://www.nlm.nih.gov/research/umls/
l  PubMed
l  https://www.ncbi.nlm.nih.gov/pubmed/
l  MESH
l  Medical Subject Headings
l  TOXNET Databases
l  https://toxnet.nlm.nih.gov/
l  Base de données publiques des médicaments HAS
l  http://base-donnees-publique.medicaments.gouv.fr/index.php#
74

37
Sources du cours
l  L. Audibert
l  G. Gardarin et L. Bouganem

l  N. Larousse

75

38

Vous aimerez peut-être aussi