Top Banner
Mickaël Martin-Nevot 02/09/2018 16:18 Cette œuvre de Mickaël Martin Nevot est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage à l'Identique 3.0 non transposé . Cette œuvre est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage à l'Identique 3.0 non transposé . V1.4.0 CM1-1 : Base de données et SGBDR
22

CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Sep 12, 2018

Download

Documents

phamthu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Mickaël Martin-Nevot

02/09/2018 16:18

Cette œuvre de Mickaël Martin Nevot est mise à disposition selon les termes de la

licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage à l'Identique

3.0 non transposé.

Cette œuvre est mise à disposition selon les termes de la

licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage à l'Identique

3.0 non transposé.

V1.4.0

CM1-1 : Base de données et SGBDR

Page 2: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

I. Prés.

II. BD et SGBD

III. Merise

IV. LDD

V. LMD

VI. LCT

VII. Droits

VIII.LDSP

IX. SQL avancé

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 1/21

Page 3: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Ensemble de données modélisant un univers (domaine)

Outil de stockage structuré et de consultation correspondant

Système de gestion de base de données (SGBD) :

Logiciel de manipulation et de stockage de BD

Administrateur de BD : est responsable (en permanence) du

bon fonctionnement des serveurs de bases de données

Base de données (BD) ?

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Banque de données : collection de bases de données

BdD, BDD : base de données

DB : database

ABD : administrateur de base de données

DBA : database administrator

SGBD : système de gestion de base de données

DBMS : database-management system

2/21

Page 4: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Utilisation de fichiers non informatisés

Tableur (Microsoft Excel)

Autres simples fichiers informatisés

Avant les bases de données

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 3/21

Page 5: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Limites des approches traditionnelles :

Complexité (exponentielle)

Redondance (duplication des données)

Coûts importants de développement et de maintenance

Manque de flexibilité

Manque de sécurité

Concepts fondamentaux (partagés avec une BD) :

Organisation des données

sur disque (ou autres stockages)

Procédé de récupération des données

Avant les bases de données

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 4/21

Page 6: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Stocker de (très) gros volumes de données durablement

Protéger les données (avaries, piratage)

Simplifier l’accès aux données

Diminuer (drastiquement) les temps de recherche

Prise en compte de liens (dépendances) entre les données

Plusieurs utilisateurs simultanés

Intérêts d’une BD ?

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21

Page 7: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Modèles de données :

1960 : modèle hiérarchique

1970 : modèle en réseau

1980 : modèle relationnel

1995 : PostgreSQL

1990 : modèle objet

SQL (norme) :

1986 : SQL-86

1989 : SQL-1

1992 : SQL2

1999 : SQL3

Historique

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

CODASYL : organisme à l’origine des BD

SQL (structured query language) :

langage de requête structurée, créé en 1974

Inventé par E.F.CODD

6/21

Page 8: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Schéma externe (SE) :

Comment l’utilisateur voit les données

Schéma conceptuel (SC) :

Structure logique des données

Schéma interne (SI) :

Structure physique de stockage des données

Architecture ANSI-SPARC

Système d'information et base de données Mickaël Martin Nevot

SE SE SE

SC

SI

7/21

Page 9: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Architecture d’un SGBD

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Schémas physiques

Schéma conceptuelMonde

réel

Niveau

conceptuel

Niveau

physique

Niveau

externe

Groupe utilisateurs 1 Groupe utilisateurs 2

Rendu A Rendu B

Modélisation

SGBD

Ingénieur logiciel SGBD

Administrateur

de la BD

Ingénieur système

Voir architecture d’un

SGBDR sur le site

Web de l’enseignant

8/21

Page 10: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Description des données : redondance minimale

Intégrité de la base : cohérence avec la réalité transcrite

Indépendance des données : indépendance applicative

Sécurité de fonctionnement : journalisation

Administration et contrôle : privilèges, optimisation

Partage des données : transactions (sérialisées)

Souplesse d'accès aux données : langages déclaratifs

Fonctionnalités d’un SGBD

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Un langage déclaratif suit un paradigme produisant

des résultats contextuellement indépendants

9/21

Page 11: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Représentation de concepts sémantiquement liés entre eux :

Exprimer un besoin

Traduire le monde réel (modélisation)

Représentation « graphique » décrivant une base de données :

Modèle hiérarchique :

Défauts : redondance, dissymétrie, parcours long

Modèle réseaux sémantiques (ou de réseau) :

Défaut : trop faible indépendance des données

Modèle objet :

Défaut : importante quantité de ressources nécessaire

Modèle entité / association (relationnel)

Schéma conceptuel

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Représentation abstraite d’un système qui facilite l’étude et la compréhension du

système et permet de le simuler. Vue subjective, décomposée mais pertinente de

la réalité. Représentation d’un système dans un autre monde que celui du système

10/21

Page 12: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Théorie mathématique : algèbre relationnelle (ensembliste)

Tables (relations) avec colonnes (champs) et lignes (tuples)

Modèle relationnel

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Intention : structure d’une base de données Extension : données d’une base de données

Attributs

R = ( A1 A2 … An ) Intention

}ExtensionN-uplet ou

tupleD1 D2 … Dn

Domaine (Di) → iR - Instance de R

Ou enregistrements, fichesOu attributs, rubriques

Domaine : ensemble nommé de valeurs non vide que peut prendre un attribut

11/21

Page 13: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Degré : nombre de champs d'une relation

Cardinalité : nombre de tuples d'une relation

Clef candidate (potentielle) : ensemble des données

permettant d'indexer chaque ligne de manière différenciée

Modèle relationnel

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 12/21

Page 14: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Navigation grâce à SQL

Associé à la théorie de la normalisation

SGBDR : SGBD relationnel

Modèle relationnel

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Departement

numd nomd

1 ISMIN

2 ICM

Projet

nump nomp nume numd

1 Account management 1 1

Travail

nump nume Duree

1 1 3

1 2 3

Employe

nume nome date_nais numd

1 Dupond 1/12/80 1

2 Jacques 21/04/68 1

3 Martin 03/25/52 2

Voir les 12 règles de Codd sur

le site Web de l’enseignant

13/21

Page 15: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Clef primaire :

Une seule par relation (clef candidate retenue comme primaire)

Simple (un seul champ) ou composée (plusieurs champs)

Unique et non nulle

Clef étrangère :

Clef primaire d’une autre relation de la BD

Clefs

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Departement

numd nomd

1 ISMIN

2 ICM

Employe

nume nome daten numd

1 Dupond 1/12/80 1

2 Jacques 21/04/68 1

3 Martin 03/25/52 2

Obligatoire

14/21

Page 16: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Principaux SGBDR

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 15/21

Page 17: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Un SGBDR très utilisé

Préinstallé/proposé par beaucoup d’offres d’hébergements

Facilité de déploiement et de prise en main

Libre et gratuit

S’intègre très bien avec Linux, Apache HTTP Server, PHP…

Inconvénients de PostgreSQL :

Ne respecte pas complètement la norme SQL

Sauvegardes et réplications peu évoluées

Pourquoi PostgreSQL ?

Système d'information et base de données Mickaël Martin Nevot

Apache HTTP Server : Serveur HTTP libre et très répandu

(LAMP : Linux, Apache, MySQL, PHP)

16/21

Page 18: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

L3G (langage de troisième génération) :

Procédural, séquentiel (C, Java, PHP)

Inversion de commandes avec une API

L4G (Langage de quatrième génération) :

SGBDR intégré (Microsoft Access)

Générateur d’application

Utilisation d’un SGBDR

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

Préserve l’indépendance

physique/logique

Rapide et simple d’utilisation

pour de petites applications

Application BD

API

17/21

Page 19: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Client-serveur, architecture 3-tier :

Client

Serveur d’application

Serveur de données (BD)

Utilisation d’un SGBDR

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac

InternetClient

Serveur

Requête HTTP

Page HTML

1

5

Base de données

Échange de données

serveur / Base de données

Exécution PHP, Java,

etc.

2

3

4

Interprétation

HTML/CSS par le

navigateur

6

18/21

Page 20: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Maintenance

Utilisation

Implantation

Conception Merise

Langage de définition de

données (LDD)

Langage de manipulation de données (LMD)

Corrective, adaptative, perfective

Cycle de vie d’une BD

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 19/21

Page 21: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Conception d’une BD

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 20/21

Page 22: CM1-1 : Base de données et SGBDR Mickaël Martin … · CM1-1 : Base de données et SGBDR. ... Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 5/21.

Prés. > BD et SGBD > Merise > LDD > LMD > LCT > Droits > LDSP > SQL avancé V1.4.0

Auteur

Mickaël Martin Nevot

[email protected]

Carte de visite électronique

Cours en ligne sur : www.mickael-martin-nevot.com

Mickaël Martin-Nevot

[email protected]

Carte de visite électronique

Relecteurs

Laurent Carmignac

Crédits

Utilisation des bases de données Mickaël Martin-Nevot - Laurent Carmigniac 21/21