Beruflich Dokumente
Kultur Dokumente
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
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
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
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
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
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
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
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
donnes
du client
donnes
de la
commande
donnes
d'un dtail
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
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
?
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
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
(*) 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
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
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
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
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
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
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
Un dernier exemple :
calculer la rpartition du chiffre d'affaire par localit et par produit
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
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
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
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
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
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.
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
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.
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
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
Contenu
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
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.
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
2010
1956
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
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
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
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
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
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 ?
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