Vous êtes sur la page 1sur 36

Motivation et introduction 1.1 Une premire approche 1.

5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1. MOTIVATION ET INTRODUCTION

Version 2 - Janvier 2012

Support du chapitre 1, Motivation et introduction


de l'ouvrage Bases de donnes, J-L Hainaut, Dunod 2009, 2012.

azerty
Introduction Bases de donnes J-L Hainaut 2012 1
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1. MOTIVATION ET INTRODUCTION
Contenu

1.1 Une premire approche des donnes


1.2 Utiliser une base de donnes
1.3 Premires conclusions
1.4 Les systmes de gestion de bases de donnes
1.5 Les dfis des bases de donnes d'aujourd'hui
1.6 Un peu d'histoire
1.7 Et ensuite ?

azerty
Introduction Bases de donnes J-L Hainaut 2012 2
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Nous baignons dans un tourbillon d'informations

Nous recevons des informations de notre environnement

Nous transmettons des informations notre environnement

Les informations prennent la forme de donnes (signes


mmoriss et vhiculs sur un support matriel ou immatriel)

Question : comment stocker et traiter ces donnes ?

Rponse : dans une base de donnes

azerty
Introduction Bases de donnes J-L Hainaut 2012 3
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Les donnes sont omniprsentes autour de nous ...

azerty
Introduction Bases de donnes J-L Hainaut 2012 4
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Comment les ranger dans un ordinateur ?

azerty
Introduction Bases de donnes J-L Hainaut 2012 5
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Comment les ranger dans un ordinateur ?

scanner les bons de commande [1/10]

copier les donnes dans un tableau Word [2/10]

copier les donnes dans une feuille Excel [4/10]

copier les donnes dans une base de donnes


[10/10]

azerty
Introduction Bases de donnes J-L Hainaut 2012 6
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

En regardant d'un peu plus prs ...

donnes
du client
donnes
de la
commande

donnes
d'un dtail

azerty
Introduction Bases de donnes J-L Hainaut 2012 7
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Reportons ces donnes dans des tableaux :

donnes
du client

donnes
de la
commande
donnes
d'un dtail

donnes de la commande donnes du client


NCOM DATECOM TOTAL-COMMANDE NCLI NOM ADRESSE LOCALITE
30188 2/1/2009 69720 B512 GILLET 14,r. de l'Et Toulouse

donnes des dtails


NPRO LIBELLE PRIX QCOM SOUS-TOTAL
CS464 CHEV. SAPIN 400x6x4 220 180 39600
PA45 POINTE ACIER 45 (20K) 105 22 2310
PA60 POINTE ACIER 60 (10K) 95 70 6650
PH222 PL. HETRE 200x20x2 230 92 21160

azerty
Introduction Bases de donnes J-L Hainaut 2012 8
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Pas entirement convaincant (1)

donnes de la commande donnes du client


NCOM DATECOM TOTAL-COMMANDE NCLI NOM ADRESSE LOCALITE
30188 2/1/2009 69720 B512 GILLET 14,r. de l'Et Toulouse

donnes des dtails


NPRO LIBELLE PRIX QCOM SOUS-TOTAL
CS464 CHEV. SAPIN 400x6x4 220 180 39600
PA45 POINTE ACIER 45 (20K) 105 22 2310
PA60 POINTE ACIER 60 (10K) 95 70 6650
PH222 PL. HETRE 200x20x2 230 92 21160

Les donnes TOTAL-COMMANDE et SOUS-TOTAL sont calcules : inutile


de les conserver, on pourra les recalculer en cas de besoin

azerty
Introduction Bases de donnes J-L Hainaut 2012 9
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Pas entirement convaincant (2)

?
donnes de la commande donnes du client
NCOM DATECOM TOTAL-COMMANDE NCLI NOM ADRESSE LOCALITE
30188 2/1/2009 69720 B512 GILLET 14,r. de l'Et Toulouse

donnes des dtails


? NPRO LIBELLE PRIX QCOM SOUS-TOTAL
CS464 CHEV. SAPIN 400x6x4 220 180 39600
PA45 POINTE ACIER 45 (20K) 105 22 2310
PA60 POINTE ACIER 60 (10K) 95 70 6650
PH222 PL. HETRE 200x20x2 230 92 21160

Il est impossible de reconstituer le bon de commande d'origine : quel est le


client de la commande, quelle est la commande d'un dtail ?

azerty
Introduction Bases de donnes J-L Hainaut 2012 10
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Donnes sans redondances (*) et avec rfrences :

donnes de la commande donnes du client


NCOM NCLI DATECOM NCLI NOM ADRESSE LOCALITE
30188 B512 2/1/2009 B512 GILLET 14,r. de l'Et Toulouse

donnes des dtails


NCOM NPRO QCOM LIBELLE PRIX
30188 CS464 180 CHEV. SAPIN 400x6x4 220
30188 PA45 22 POINTE ACIER 45 (20K) 105
30188 PA60 70 POINTE ACIER 60 (10K) 95
30188 PH222 92 PL. HETRE 200x20x2 230

(*) presque !

azerty
Introduction Bases de donnes J-L Hainaut 2012 11
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Enregistrons les donnes de 2 bons de commandes :


donnes des commandes donnes des clients
NCOM NCLI DATECOM NCLI NOM ADRESSE LOCALITE
30188 B512 2/1/2009 B512 GILLET 14,r. de l'Et Toulouse
30179 C400 22/12/2008 C400 FERARD 63,r. du Tertre Poitiers

donnes des dtails


NCOM NPRO QCOM LIBELLE PRIX
30188 CS464 180 CHEV. SAPIN 400x6x4 220
30188 PA45 22 POINTE ACIER 45 (20K) 105
30188 PA60 70 POINTE ACIER 60 (10K) 95
30188 PH222 92 PL. HETRE 200x20x2 230
30179 CS262 60 CHEV. SAPIN 200x6x2 75
30179 PA60 20 POINTE ACIER 60 (10K) 95

Observation
si plusieurs dtails mentionnent le mme produit, ses caractristiques
sont rptes autant de fois : on isole les donnes des produits dans un
tableau spcifique

azerty
Introduction Bases de donnes J-L Hainaut 2012 12
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Distribution optimale des donnes des bons de commande


donnes des commandes donnes des clients
NCOM NCLI DATECOM NCLI NOM ADRESSE LOCALITE
30188 B512 2/1/2009 B512 GILLET 14,r. de l'Et Toulouse
30179 C400 22/12/2008 C400 FERARD 63,r. du Tertre Poitiers

donnes des dtails donnes des produits


NCOM NPRO QCOM NPRO LIBELLE PRIX
30188 CS464 180 CS464 CHEV. SAPIN 400x6x4 220
30188 PA45 22 PA45 POINTE ACIER 45 (20K) 105
30188 PA60 70 PA60 POINTE ACIER 60 (10K) 95
30188 PH222 92 PH222 PL. HETRE 200x20x2 230
30179 CS262 60 CS262 CHEV. SAPIN 200x6x2 75
30179 PA60 20

azerty
Introduction Bases de donnes J-L Hainaut 2012 13
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.1 Une premire approche des donnes

Ajoutons d'autres donnes : notre premire base de donnes

azerty
Introduction Bases de donnes J-L Hainaut 2012 14
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.2 Utiliser une base de donnes

azerty
Introduction Bases de donnes J-L Hainaut 2012 15
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.2 Utiliser une base de donnes

Que peut-on faire de ces donnes ?

Avant tout, les conserver aussi longtemps que ncessaire !

Les interroger : quel est le numro, le nom et l'adresse des clients de


Toulouse ?
select NCLI, NOM, ADRESSE ile
fac
from CLIENT
where LOCALITE = 'Toulouse';

ou encore : quelles sont les commandes des clients de Toulouse ?


s
u plu
select NCOM pe ile
un iffic
from COMMANDE d

where NCLI in (select NCLI


from CLIENT where LOCALITE = 'Toulouse');

requtes rdiges dans le langage SQL

azerty
Introduction Bases de donnes J-L Hainaut 2012 16
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.2 Utiliser une base de donnes

Que peut-on faire de ces donnes ?

Vrifier une commande lors de son enregistrement : le client est-il connu ?


son adresse a-t-elle chang ? les produits commands sont-ils rpertoris ?

Produire les factures

Prparer le rapprovisionnement des produits en rupture de stock

Calculer le chiffre d'affaire mensuel

Etudier la rpartition gographique des ventes

Et mille autres applications ...

azerty
Introduction Bases de donnes J-L Hainaut 2012 17
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.2 Utiliser une base de donnes

Que peut-on faire de ces donnes ?

Un dernier exemple :
calculer la rpartition du chiffre d'affaire par localit et par produit

select C.LOCALITE, P.NPRO, sum(D.QCOM*P.PRIX)


from CLIENT C, COMMANDE M, DETAIL D, PRODUIT P
where C.NCLI = M.NCLI and M.NCOM = D.NCOM er
s ay
s e
and D.NPRO = P.NPRO e d'e endr !
til pr nt
inu com nsta
group by C.LOCALITE, P.NPRO; de r l'i u
po

Cette question complexe est rsolue en une seule instruction SQL de 5 lignes !

azerty
Introduction Bases de donnes J-L Hainaut 2012 18
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.3 PREMIERES CONCLUSIONS

Une base de donnes est constitue dun ensemble de tables.

Chaque table contient les donnes relatives une collection d entits de


mme nature.

Chaque ligne dune table reprend les donnes relatives une entit.

Chaque colonne dune table dcrit une proprit commune des entits.

Les lignes dune table sont distinctes. Cest sur une (voire plusieurs)
colonne(s) que se joue cette unicit. Le jeu de colonnes dont les valeurs sont
uniques constitue un identifiant de la table.

Les lignes dune table peuvent faire rfrence chacune une ligne dune autre
table, o des informations sur une entit associe peuvent tre obtenues. Les
colonnes de rfrence sappellent cl trangre vers cette autre table.

azerty
Introduction Bases de donnes J-L Hainaut 2012 19
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.3 Premires conclusions

On vite denregistrer des donnes quil est possible de calculer partir


dautres donnes enregistres.
On ne conserve pas dans une mme table des donnes relatives des entits
de nature diffrente. On provoquerait en effet des redondances nuisibles.
Le langage SQL permet de rdiger de manire simple et concise des requtes
dextraction et de calcul de donnes de complexit quelconque.
On ne construit pas une base de donnes pour satisfaire les besoins
immdiats dune application particulire. Une base de donnes est conue
pour reprsenter le plus fidlement possible les informations relatives une
activit humaine, socio-conomique, culturelle ou technique. Elle est
indpendante de ce quon fera de ces donnes.
La construction dune base de donnes exige une analyse rigoureuse et
attentive. Il est cependant possible tout moment dajouter de nouvelles tables
et de nouvelles colonnes afin de suivre lvolution des besoins des utilisateurs.

azerty
Introduction Bases de donnes J-L Hainaut 2012 20
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.4 LES SYSTEMES DE GESTION DE BASES DE DONNEES


La gestion d'une base de donnes pose des problmes complexes.
Cette gestion est assure par des logiciels spcialiss : les systmes de
gestion de bases de donnes ou SGBD.

Organisation des donnes : le SGBD organise les donnes en tables


permanentes stockes sur disque; il cre les mcanismes garantissant un accs
rapide aux donnes; il informe les utilisateurs sur ces structures.

Gestion des donnes : le SGBD garantit l'volution cohrente des donnes; il


vrifie que les contraintes (unicit, rfrence entre tables, etc.) sont respectes.

Accs aux donnes : le SGBD permet l'accs aux donnes la fois par l'utilisateur
occasionnel et par les programmes de traitement de donnes.

azerty
Introduction Bases de donnes J-L Hainaut 2012 21
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.4 Les SGBD

Protection contre les accidents : le SGBD garantit l'intgrit et l'accessibilit des


donnes en cas d'incident ou d'attaque.

Gestion des accs concurrents : le SGBD permet l'accs simultan aux donnes
par des centaines voire des milliers d'utilisateurs. Il contrle rigoureusement les
oprations simultanes sur les mmes donnes.

Contrle des accs : le SGBD garantit que seuls les utilisateurs autoriss peuvent
accder aux donnes et les modifier.

azerty
Introduction Bases de donnes J-L Hainaut 2012 22
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.5 LES DEFIS DES BD D'AUJOURD'HUI

Multiplicit des types de donnes. Une base de donnes moderne peut contenir
des donnes multimdias, des donnes textuelles, des donnes spatiales (donnes
GPS par exemple), des donnes historiques (plusieurs lignes par entit), des
donnes semi-structures.

L'information incomplte. Une base de donnes doit admettre qu'on ne connat


pas tout sur tout et que nos connaissances peuvent tre errones. Comment
assurer au maximum la cohrence des donnes dans ce contexte ?

Volumes et performances. Une base de donnes peut contenir des dizaines de


milliers de tables, des milliards de lignes. Comment garantir l'accessibilit de ces
donnes, leur protection contre les incidents, des temps d'accs satisfaisants ?

azerty
Introduction Bases de donnes J-L Hainaut 2012 23
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.5 Les dfis des BD d'aujourd'hui

Accs par des non informaticiens. Malgr sa facilit d'utilisation (pour des
requtes simples), SQL est hors de porte de la plupart des utilisateurs non
spcialistes. Des modes d'accs graphiques, en langage naturel ou par mode
vocal, sont ncessaires pour en accrotre l'usage.

Maintenance et volution. La structure d'une base de donnes peut voluer :


ajouter ou supprimer une table, une colonne, une contrainte. Comment prserver
les donnes et les programmes utilisateurs lors de cette volution ?

Les donnes distribues et nomades. Une base de donnes peut tre rpartie
et/ou duplique sur plusieurs ordinateurs distribus gographiquement. Certains de
ceux-ci peuvent tre des appareils mobiles (embarqus, portables, smart phones).
Comment garantir la cohrence, la protection et l'accessibilit des donnes ?

azerty
Introduction Bases de donnes J-L Hainaut 2012 24
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.5 Les dfis des BD d'aujourd'hui

Les BD et le Web. De nombreuses bases de donnes sont intimement lies au


Web. En outre, le Web peut tre vu comme une gigantesque base de donnes
(largement incohrente et redondante !) Qu'en est-il des principes rigoureux des
bases de donnes dans ce contexte ?

Les donnes dcisionnelles. Les donnes ne servent pas seulement contrler la


gestion et le fonctionnement d'une entreprise au jour le jour. Elles sont aussi
souvent utilises pour soutenir des dcisions tactiques et stratgiques.
Caractristiques : traitement de trs gros volumes de donnes complexes pour
produire une rponse courte (une heure de traitement de plusieurs traoctets pour
en extraire un seul nombre !). Comment structurer une base de donnes dans ce
sens (= entrepts de donnes) ?

azerty
Introduction Bases de donnes J-L Hainaut 2012 25
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 UN PEU D'HISTOIRE

Contenu

1.1 Pr-condition : le disque magntique


1.2 Les annes 1960
1.3 Les annes 1970
1.4 Les annes 1980
1.5 Les annes 1990
1.6 Les annes 2000

azerty
Introduction Bases de donnes J-L Hainaut 2012 26
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Pr-condition : le disque magntique

Le concept de base de donnes est n dans les annes 60, avec la gnralisation
des disques magntiques permettant l'accs direct une donne, contrairement
aux bandes magntiques, limites l'accs squentiel.

Premier disque magntique commercial : l'IBM


350, quipant le Ramac 305
Date : de 1956 1969
Capacit : 5 millions de mots (= 4,4 Mo)
Vitesse : 1.200 rpm. Dplacement moyen : 0,6
sec (temps de commutation inconnu mais sans
doute trs important).
Gomtrie : 50 plateaux de 60 cm mais
seulement 2 ttes. 100 cylindres, 100 pistes par
cylindre. 5 secteurs par piste. 100 mots par
secteur. 7 bits par mot.
Volume : 2 m3. Poids : 1.075 kg
Nombre d'exemplaires fabriqus : 100
www.gizmag.com/go/6150/
Cot de location : 35.000 $/an (en 1956)

azerty
Introduction Bases de donnes J-L Hainaut 2012 27
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Pr-condition : le disque magntique

2010
1956

Mini-disque portable : iomega Prestige, 500 GB


Date : 2010
Capacit : 500 milliards doctets (= 500 Go)
Vitesse : 5.400 rpm. Dplacement moyen :
0,016 sec.
Gomtrie : 1 plateau de 6,40 cm, 2 ttes
Volume : 11 x 8 x 1,2 cm3. Poids : 90 gr.
Nombre d'exemplaires fabriqus : 10.000.000
(estimation)
Cot dachat : 60 $ (en 2010)

www.gizmag.com/go/6150/

azerty
Introduction Bases de donnes J-L Hainaut 2012 28
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Les annes 60

Annes 1960
1963 : Integrated Data Store (IDS) chez Honeywell-Bull. Dvelopp par Ch.
Bachman. Anctre des architectures standard de SGBD. Modle de donnes dit
network.
1965 : Information Management System (IMS) chez IBM. Au dpart conu pour
North American Rockwell pour supporter le projet du 1er vol humain vers la lune.
Initialement sur bande magntique. Sera commercialis en 1969 sous le nom
IMS/360. Modle de donnes dit hierarchical.
1968 : premier projet de recommandation CODASYL, inspire d'IDS. Modle de
donnes dit network.

www.gizmag.com/go/6150/

azerty
Introduction Bases de donnes J-L Hainaut 2012 29
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Les annes 70

Annes 1970
1970 : article de E. F. Codd d'IBM dfinissant les principes des bases de donnes
relationnelles (Codd, E., F., A Relational Model of Data for Large Shared Data
Banks, in Comm. ACM, Vol. 13, No 6, June 1970).
1971 : premire recommandation officielle CODASYL. Les rapports de 1973 et
1978 affineront et clarifieront les propositions. Origine de nombreux SGBD encore
en activit aujourd'hui.
1973 : Premire dfinition du langage SEQUEL, qui sera renomm SQL.
1974 : premier SGBD relationnel exprimental, le System/R d'IBM. Donnera
naissance aux SGBD SQL/DS et DB2 dans les annes 1980.
1975 : premire version oprationnelle de INGRES, SGBD relationnel
exprimental de l'universit Berkeley. Langage QUEL concurrent de SQL.
Donnera naissance PostgreSQL. Des transfuges de l'quipe creront Sybase.
1979 : premire version commerciale d'un SGBD relationnel proposant SQL :
Oracle.

azerty
Introduction Bases de donnes J-L Hainaut 2012 30
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Les annes 80

Annes 1980
1982 : commercialisation de SQL/DS, SGBD relationnel d'IBM (machines MV).
1983 : commercialisation de DB2, SGBD relationnel d'IBM (machines MVS).
1987 : aprs 10 ans de travaux, premier standard effectif destin aux SGBD
relationnels.
Les SGBD relationnels remplacent progressivement les SGBD traditionnels
(CODASYL, IMS).
Dveloppement de SGBD exprimentaux admettant des valeurs structures
(tables non plates). Ces principes seront repris par les SGBD objet et relationnels
objet.
Dveloppement de SGBD dductifs exprimentaux, bass sur les principes de
dduction de la logique. Pas de succs commercial.
Exprimentation sur les bases de donnes distribues.

www.gizmag.com/go/6150/

azerty
Introduction Bases de donnes J-L Hainaut 2012 31
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Les annes 90

Annes 1990
1992 : Microsoft commercialise Sybase sous le nom SQL Server.
Standard SQL2 ou SQL 1992. Introduit les notions de primary key et foreign key.
Dveloppement de SGBD exprimentaux orients objet. Faible succs
commercial mais certains de leurs principes seront repris par les SGBD
relationnels objet.
Apparition des SGBD relationnels objet.
Microsoft envisage d'intgrer SQL Server comme composant systme de
Windows. Ce projet ne sera ralis qu'avec Vista.
Des versions lgres sont proposes pour les systmes mobiles et embarqus :
cartes puce, PDA, systmes de capteurs, etc.

www.gizmag.com/go/6150/

azerty
Introduction Bases de donnes J-L Hainaut 2012 32
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.6 Un peu d'histoire - Les annes 2000

Annes 2000
2000 : Apparition des SGBD grant de manire native des documents XML.
Faible succs commercial mais certains de leurs principes seront repris par les
SGBD relationnels modernes.
Standard SQL3 ou SQL:1999. Introduit notamment les requtes rcursives et les
structures relationnelles objet.
SQL 2003 en prparation. Spcifie notamment les aspects multimdia, XML,
modlisation spatiale et analyse de donnes (fouille de donnes, entrepts de
donnes).
Les SGBD IMS et CODASYL issus des annes 1960 sont toujours en activit !

www.gizmag.com/go/6150/

azerty
Introduction Bases de donnes J-L Hainaut 2012 33
Motivation et introduction 1.1 Une premire approche 1.5 Les dfis
Partie 1 - Comprendre les bases de donnes 1.2 Utiliser une base de donnes 1.6 Un peu d'histoire
Partie 2 - Utiliser les bases de donnes 1.3 Premires conclusions 1.7 Et ensuite ?
Partie 3 - Dvelopper une base de donnes 1.4 Les SGBD

1.7 ET ENSUITE ?

Nous allons tenter de rpondre trois questions fondamentales :

Qu'est-ce qu'une base de donnes ?


Partie 1 - CONCEPTS DES BASES DE DONNEES

Comment utilise-t-on une base de donnes ?


Partie 2 - UTILISATION DES BASES DE DONNEES

Comment construit-on une base de donnes ?


Partie 3 - DEVELOPPEMENT DES BASES DE DONNEES

azerty
Introduction Bases de donnes J-L Hainaut 2012 34
Motivation et introduction
Partie 1 - Comprendre les bases de donnes
Partie 2 - Utiliser les bases de donnes
Partie 3 - Dvelopper une base de donnes

Fin du module 1

Module suivant :
2. Concepts des bases de donnes

azerty
Introduction Bases de donnes J-L Hainaut 2012 35
azerty Bases de donnes J-L Hainaut 2012 36