36
Qu’est ce qu’une base de donn´ ees Qu’est ce qu’un syst` eme de base de donn´ ees Introduction aux bases de donn´ ees Cours 1 : G´ en´ eralit´ es sur les bases de donn´ ees Odile PAPINI POLYTECH Universit´ e d’Aix-Marseille [email protected] http://odile.papini.perso.luminy.univ-amu.fr/sources/BDMAT.html Odile PAPINI Introduction aux bases de donn´ ees

Introduction aux bases de données Cours 1 : Généralités sur les

Embed Size (px)

Citation preview

Page 1: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Introduction aux bases de donneesCours 1 : Generalites sur les bases de donnees

Odile PAPINI

POLYTECHUniversite d’[email protected]

http://odile.papini.perso.luminy.univ-amu.fr/sources/BDMAT.html

Odile PAPINI Introduction aux bases de donnees

Page 2: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

IMPORTANT LES TP

A FAIRE DES AUJOURD’HUI

Aller sur la page web suivante pour demander l’activation de votrebase de donnees (MySQL) :

https ://dosicalutils.luminy.univ-amu.fr/db-perso/trunk/

Remplir le formulaire de demande d’activation avec votre identifiantet votre mot de passe de compte POLYTECHLe nom d’utilisateur et le mot de passe, pour votre base de donnees,seront ensuite envoyes par email.

Pour utiliser votre base de donnees (creer des tables, ajouter desdonnees, . . .), vous utiliserez phpMyAdmin :

https ://phpmyadmin.luminy.univ-amu.fr

Odile PAPINI Introduction aux bases de donnees

Page 3: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Plan du cours 1

1 Qu’est ce qu’une base de donneesExemples de bases de donneesDifferents types de bases de donnees

2 Qu’est ce qu’un systeme de base de donneesDonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Odile PAPINI Introduction aux bases de donnees

Page 4: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Fonction d’un systeme de bases de donnees

Assurer la conservation d’enregistrements informatiques

Base de donnees (BD) :

reservoir de fichiers de donnees informatiques

operations sur les fichiers

Odile PAPINI Introduction aux bases de donnees

Page 5: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Exemples de BD

Gestion des personnels, etudiants, cours, inscriptions, ... del’universite

Systeme de reservation de places d’avion chez Air France, deplaces de train a la SNCF

Gestion des comptes clients de La Poste

Gestion des commandes chez Amazon.com

Gestion d’une bibliotheque

Gestion des pages Web chez google.com

...

Odile PAPINI Introduction aux bases de donnees

Page 6: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Exemple de BD : reservation d’un billet de train

billet

nom clientno train

dateclasse

no wagonno place

heure departgare departgare arrivee

train

no traingare depart

heure departdestination finale

heure arriveejour

arret

no trainno arret

gareheure departheure arrivee

Odile PAPINI Introduction aux bases de donnees

Page 7: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Exemple de BD : cave a vin

Base de donnees d’une cave

NUM VIN PRODUCTEUR ANNEE NB

2 CabernetSauvignon ChateauduMayne 1983 53 Chardonnay Jaboulet − Vercherre 1984 76 PinotNoir Jaboulet − Vercherre 1984 10

12 Brunello EmilioCostanti 1977 615 Silvaner Guntrum 1985 823 Riesling BalthasarRess 1976 2

Odile PAPINI Introduction aux bases de donnees

Page 8: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD

description

manipulation

interrogation

coherence

garanties

confidentialite

efficacite

Odile PAPINI Introduction aux bases de donnees

Page 9: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : description

Description des donnees de l’application (trains, trajets,reservations) sans faire reference a une solution informatiqueparticuliere

modelisation conceptuelle

Elaboration d’une description equivalente pour le stockage desdonnees dans le Systeme de Gestion de Bases de Donneeschoisi

modelisation logiqueLangage de Description de Donnees (LDD)

Odile PAPINI Introduction aux bases de donnees

Page 10: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : manipulation

Creer la base de donnees initiale avec les donnees representantle reseau SNCF

langage permettant l’insertion de donnees

Creer au fur et a mesure les donnees sur les reservations.

Modifier si besoin et eventuellement supprimer toute donneedeja rentree

Langage de Manipulation de Donnees (LMD)(insertion, modification, suppression)

Odile PAPINI Introduction aux bases de donnees

Page 11: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : interrogation

Repondre a toute demande d’information portant sur les donneescontenues dans la base.

a) Le professseur Tournesol a-t-il une reservation pouraujourd’hui ? Si oui, donner les informations connues sur cettereservation.

b) Quels sont les horaires des trains de Marseille a Cassis entre9h et 10h le dimanche ?

c) Donner les destinations au depart de Marseille sans arretsintermediaires.

langage de requete (langage d’interrogation)Odile PAPINI Introduction aux bases de donnees

Page 12: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : coherence

Il faut pouvoir exprimer toutes les regles qui contraignent lesvaleurs pouvant etre enregistrees de facon a eviter toute erreur quipeut etre detectee.

Il ne faut jamais donner la meme place dans le meme train a 2clientsLes arrets d’un train sont numerotes de facon continueLa date de reservation pour un train doit correspondre a unjour de circulation de ce trainL’heure de depart d’une gare doit etre anterieure a l’heured’arrivee dans cette gareL’heure d’arrivee a un arret doit etre posterieure a l’heure dedepart de l’arret precedent...

Odile PAPINI Introduction aux bases de donnees

Page 13: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : garanties

Il ne faut pas que les informations (par exemple, lesreservations) soient perdues a cause d’un disfonctionnementquelconque : erreur de programmation, panne systeme, pannede l’ordinateur, coupure de courant, etc

garantie de fiabilite

Il ne faut pas qu’une action faite pour un utilisateur (parexemple, l’enregistrement d’une reservation) soit perdue dufait d’une autre action faite simultanement pour un autreutilisateur (reservation de la meme place).

garantie de controle de concurrence

Odile PAPINI Introduction aux bases de donnees

Page 14: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : confidentialite

Toute information doit pouvoir etre protegee contre l’accespar des utilisateurs non autorises :

en lectureen ecriture

Interdire par exemple aux clients de modifier les numeros destrains ou les horaires ou leur reservation.

garantie de confidentialite (privacy)

Odile PAPINI Introduction aux bases de donnees

Page 15: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Besoins pour la gestion d’une BD : efficacite

Le temps de reponse du systeme doit etre conforme aux besoins :

en interactif : pas plus de 3 secondes

en programmation : assez rapide pour assumer la charge detravail attendue (nombre de transactions par jour)

mecanismes d’optimisation

eventuellement, repartition / duplication des donneessur plusieurs sites

Odile PAPINI Introduction aux bases de donnees

Page 16: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Differents types de BD

Il y en a pour tous les usages :

Bases de donnees personnelles : MsAccess, ... : 10 Ko 100 Ko

Bases de donnees professionnelles typiques : 100 Ko 100 Go

Bases de donnees professionnelles tres grandes : Very LargeDatabases (VLDB) : > 40 To

Odile PAPINI Introduction aux bases de donnees

Page 17: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

Exemples de bases de donneesDifferents types de bases de donnees

Exemples de VLDB (taille) :

Figure: source : N. DurandOdile PAPINI Introduction aux bases de donnees

Page 18: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Qu’est-ce qu’un systeme de base de donnees ?

SGBD : systeme informatique dont le but est de maintenir desinformations et les rendre disponibles a la demande

il est compose de :

donnees

materiel

logiciel

utilisateurs

Odile PAPINI Introduction aux bases de donnees

Page 19: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

SGBD

Odile PAPINI Introduction aux bases de donnees

Page 20: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Les donnees

Donnees integrees

base de donnees vue comme l’unification de plusieurs fichiers

Donnees partagees

base de donnees partagees entre plusieurs utilisateurs

Odile PAPINI Introduction aux bases de donnees

Page 21: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Le materiel

Volumes de memorisation secondaires

disques a tete amovible, supports d’enregistrements · · ·

Processeurs et memoire principale qui lui sont associes pourl’execution du systeme de base de donnees

Odile PAPINI Introduction aux bases de donnees

Page 22: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Le logiciel

Le systeme de bases de donnees (SGBD)

Fonction : proteger les utilisateurs de la BD des details duniveau materiel

Le SGBD : le composant logiciel le plus important su systeme

Odile PAPINI Introduction aux bases de donnees

Page 23: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Les utilisateurs :

3 classes d’utilisateurs :

les programmeurs d’applications

les utilisateurs finaux

l’administrateur de la base de donnees

Odile PAPINI Introduction aux bases de donnees

Page 24: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Qu’est-ce qu’une base de donnees ?

une collection de donnees persistantes utilisees par lessystemes d’application d’une entreprise

donnees persistantes :donnees acceptees par le SGBD qui ne peuvent etre enlevees quepar une requete explicite envoyee au SGBD

entite : tout objet perceptible represente dans la BD

association : relations entre les entites

les entites et les associations possedent des proprietes simples oucomplexes

Odile PAPINI Introduction aux bases de donnees

Page 25: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Qu’est-ce qu’une base de donnees ?

Modele de donnees :

definition logique independante et abstraite des objets et desoperations qui constitue une machine abstraite

objets : modelisent la structure de donnees

operations : modelisent le comportement

implementation d’un modele de donnees

realisation physique sur une machine reelle des differentscomposants d’une machine abstraite

Odile PAPINI Introduction aux bases de donnees

Page 26: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Pourquoi une base de donnees ?

Avantages :

compacite

rapidite

efficacite

exactitude

protection

controle centralise

Odile PAPINI Introduction aux bases de donnees

Page 27: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Avantages de l’approche BD

donnees partagees

redondance reduite

incoherence evitee

transactions gerees

integrite assuree

securite appliquee

conflits de besoins arbitres

normes appliquees

independances des donnees obtenue

Odile PAPINI Introduction aux bases de donnees

Page 28: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemple de Base de donnees

Figure: source : N. DurandOdile PAPINI Introduction aux bases de donnees

Page 29: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemple de Base de donnees

Figure: source : N. Durand

Odile PAPINI Introduction aux bases de donnees

Page 30: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemple de Base de donnees

Figure: source : N. DurandOdile PAPINI Introduction aux bases de donnees

Page 31: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemple de Base de donnees

Figure: source : N. Durand

Odile PAPINI Introduction aux bases de donnees

Page 32: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemple de Base de donnees

Figure: source : N. Durand

Odile PAPINI Introduction aux bases de donnees

Page 33: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemple de Base de donnees

Figure: source : N. Durand

Odile PAPINI Introduction aux bases de donnees

Page 34: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

Exemples de SGBD :

Nombreux SGBD sur le marche :

ACCESS

MySQL

PostgreSQL

ORACLE

DB2

Odile PAPINI Introduction aux bases de donnees

Page 35: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

SGBD capacite

Mainframe ou cluster de mainframes DB2, Oracle, Adabas, ...

Machine base de donnees Teradata

Serveurs Unix & Windows 2000 DB2, Informix, Oracle, Sybase,Unify, SQL Server, Ingres,

Personnels MsAccess, Paradox

Carte de Credit CQL

Odile PAPINI Introduction aux bases de donnees

Page 36: Introduction aux bases de données Cours 1 : Généralités sur les

Qu’est ce qu’une base de donneesQu’est ce qu’un systeme de base de donnees

DonneesMaterielLogicielAvantages de l’approche Base de DonneesExemples de SGBD

BD et carte a puce

Odile PAPINI Introduction aux bases de donnees