SYSTEMES D’INFORMATION & BASES DE...

23
Année 2010-2011 1 PLAN DU COURS Rappel sur SGBD : définitions, modèles Fondements théoriques du modèle relationnel Concepts pour la définition et l’intégrité des données – langage SQL Concepts pour la manipulation des données – langage SQL Systèmes d’information et méthodes de conception Conception d’une base de données relationnelle Normalisation du schéma relationnel Transactions et Accès concurrents Triggers, langage procédural PL/SQL Langage de programmation et SQL Notions d’Organisation et d’architecture interne dans les SGBD Introduction aux fonctions d’administration SYSTEMES D’INFORMATION & BASES DE DONNEES

Transcript of SYSTEMES D’INFORMATION & BASES DE...

Année 2010-2011 1

PLAN DU COURS

Rappel sur SGBD : définitions, modèlesFondements théoriques du modèle relationnelConcepts pour la définition et l’intégrité des données – langage SQLConcepts pour la manipulation des données – langage SQL

Systèmes d’information et méthodes de conceptionConception d’une base de données relationnelleNormalisation du schéma relationnel

Transactions et Accès concurrentsTriggers, langage procédural PL/SQLLangage de programmation et SQL

Notions d’Organisation et d’architecture interne dans les SGBDIntroduction aux fonctions d’administration

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 2

RAPPEL DES DEFINITIONS

Définition AFNOR d’une Base de données=

structure de données permettant de recevoir, de stocker, et de

fournir à la demande, des données à de multiples utilisateurs

indépendants

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 3

RAPPEL DES DEFINITIONS

Base de données=

ensemble structuré de données partagées entre plusieurs applications,

dans lequel les structures de données exploitées représentent aussi bien

les données du monde réel que les associations entre ces données

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 4

RAPPEL DES DEFINITIONS

Système de Gestion de Base de Données(SGBD)

=

Ensemble de composants logiciels permettant la mise en oeuvre de bases

de données dans le respect d’un modèle de structuration logique des

données.

Cet ensemble doit pour cela répondre à un ensemble défini d’objectifs en

implémentant les différentes fonctionnalités correspondantes.

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 5

RAPPEL DES DEFINITIONS

Principaux objectifs d’un SGBD

� indépendance dans la définition des données du monde réel, par

rapport aux structures physiques de stockage

� partage, qui peut être simultané, des données entre plusieurs

applications

� indépendance logique des visions propres à chaque application

� non redondance des données

� cohérence des données

� sécurité des données

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 6

RAPPEL DES DEFINITIONS

Principales fonctionnalités d’un SGBD

� description et gestion des données selon le modèle implémenté

� gestion du partage des données : concurrence d’accès, intégrité des

données, vues utilisateurs

� gestion de la confidentialité : droit d’accès, autorisation d’accès

� gestion de la sécurité des données : prévention, reprise

� mise à disposition d’outils d’aide pour : la création, l’exploitation, l’audit,

l’analyse des performances

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 7

RAPPEL DES DEFINITIONS

Architecture ANSI/X3/SPARC d’un SGBD

3 + 1 niveaux de description des données� niveau conceptuelstructuration sémantique des données du monde réel indépendamment des contraintes d’implantation sur une machine

� niveau internestructure de stockage des données (organisation et mode d’accès physiques)

�niveau externeVisions spécifiques aux utilisateurs

�niveau logiqueProlongement du niveau conceptuel avec prise en compte des contraintes imposées par le SGBD en terme d’organisation logique et d’accès logique aux données

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 8

SYSTEMES DE GESTION DE BASES DE DONNEESARCHITECTURE ANSI/X3/SPARC

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 9

RAPPEL DES DEFINITIONS

Modèle logique de données

Approche « système »La base de données est vue comme un ensemble de fichiers reliés par des pointeurs

�modèle CODASYL (Conference on Data Systems Language)3 concepts de base :- concept de donnée ou atome = attribut élémentaire ou data item (champ).- concept de type d’enregistrement = record = article : produit cartésien de data item ; défini comme unité d’échange entre la base de données et les applications- concept de lien fonctionnel = set type : lien entre deux types d’enregistrement, l’owner et le member ; c’est un lien de type père -> fils

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 10

RAPPEL DES DEFINITIONS

Modèle logique de donnéesmodèle CODASYL (Conference on Data Systems Language)

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 11

RAPPEL DES DEFINITIONS

Modèle logique de données

Approche « système »Les deux modèles ci-dessous, hiérarchique et réseau, s’appuient sur le modèle CODASYL

� modèle hiérarchiquene permet de représenter qu’un seul type d’association : père-fils (représentation du monde réel sous forme d’un arbre);Exemple : IMS (IBM)

�modèle réseau permet la représentation de tous types d’associations (représentation du monde réel sous forme d’un graphe) Exemple : IDS.II (Bull)

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 12

RAPPEL DES DEFINITIONS

Modèle logique de données

� modèle hiérarchique : exempleBase vinicole représentant : les vins, les buveurs de vins, les quantités de vin consommées par les buveurs à différentes dates, les producteurs de vins, les commandes passées par les buveurs aux producteurs

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 13

RAPPEL DES DEFINITIONS

Modèle logique de données

�modèle réseau : exempleBase vinicole représentant : les vins, les buveurs de vins, les quantités de vin consommées par les buveurs à différentes dates, les producteurs de vins, les commandes passées par les buveurs aux producteurs

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 14

RAPPEL DES DEFINITIONS

Modèle logique de données

Approche « formelle »aucune référence n’est faite à un modèle physique de stockage

�modèle RELATIONNELpermet, en s’appuyant sur une théorie mathématique élaborée, de représenter de façon simple, sous forme de table aussi bien les objets du monde réel, que les associations entre ces objets

�modèle OBJETs’appuie sur le concept d’objet qui permet d’associer dans une même structure les données et les traitements, et qui permet de gérer entre autres les concepts d’héritage, de généralisation/spécialisation

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 15

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Composantes d’un modèle de données

Selon CODD

�Structurespour définir les données

�Opérateurspour manipuler les données

�Règles d’Intégritépour traduire les contraintes liées à la définition des données par lesstructures du modèle

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 16

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Eléments de théorie des ensembles et relations

ENSEMBLE =

collection d’objets possédant tous une propriété P

E = { ei / P(ei) }

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 17

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Eléments de théorie des ensembles et relations

OPERATIONS SUR LES ENSEMBLES

UnionSoit E = { ei / P(ei) }, soit F = { ei / Q(ei) },

E ∪∪∪∪ F = { ei / P(ei) ∨ Q(ei) }x ∈ E ∪ F si et seulement si x ∈ E ou x ∈ F

IntersectionSoit E = { ei / P(ei) }, soit F = { ei / Q(ei) },

E ∩∩∩∩ F = { ei / P(ei) ∧ Q(ei) }x ∈ E ∩ F si et seulement si x ∈ E et x ∈ F

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 18

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Eléments de théorie des ensembles et relations

OPERATIONS SUR LES ENSEMBLES

DifférenceSoit E = { ei / P(ei) }, soit A = { ei / Q(ei) } et A ⊆ E, soit B = { ei / R(ei) } et B ⊆ E,

A - B = { ei / Q(ei) ∧ ¬R(ei) }x ∈ A - B si et seulement si x ∈ A et x ∉ B

Produit CartésienSoit E = { ei / P(ei) }, soit F = { ei / Q(ei) },

E x F = { (x,y) / P(x) ∧ Q(y) }(x,y) ∈ E x F si et seulement si x ∈ E et y ∈ F

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 19

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Eléments de théorie des ensembles et relations

RELATIONS BINAIRES

Soient deux ensembles E et F, une relation binaire RRRR entre des éléments de E et des éléments de F, est un sous-ensemble G de ExF .

On dit que x est en relation avec y et on note RRRR (x,y) ssi (x,y) ∈ G ⊆ E x F

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 20

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Eléments de théorie des ensembles et relations

RELATIONS GENERALISÉES

Définition du produit cartésien de n ensemblesSoit E1, E2, …,En, n ensembles définis par Ek = { x / Pk(x) }

ΠΠΠΠ Ek = E1 x E2 x E3 x ... x E n = { (x1,x2, ….,xn) / PK(xK) }(x1,x2, ….,xn) ∈ Π Ek si et seulement si xK ∈ Ek

On considère un produit cartésien de n ensembles et on se donne une partie G de ce produit cartésien: G ⊆ Ek, on définit ainsi une relation n-aire sur les ensembles Ek.On notera RRRR (x1,x2, ….,xn) si et seulement si (x1,x2, ….,xn) ∈G ⊆ Π Ek

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 21

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Eléments de théorie des ensembles et relations

OPERATIONS SUR LES RELATIONS

une relation est un ensemble, donc toutes les opéra tions sur les ensembles s’y appliquent .

RELATION versus PREDICAT

Une proposition est une assertion qui est soit vraie soit fausse mais pas les deux.

Un prédicat est une assertion portant sur des variables qui est soit vraie, soit fausse (mais pas les deux) selon les valeurs affectées aux variables.

Une relation peut être définie par un prédicat .

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 22

MODELE RELATIONNEL : RAPPEL DES FONDEMENTS THEORIQU ES

Modèle Relationnel de Codd versus théorie des ensemb les

StructuresRelation + sémantique du monde réel modélisé

OpérateurOpérateurs sur les ensembles, opérateurs sur les relations

Règles d’IntégritéRègles garantissant l’intégrité des données dans une modélisation relationnelle

SYSTEMES D’INFORMATION & BASES DE DONNEES

Année 2010-2011 23

SGBDR actuels

SGBD Relationnel – Objet (SGBDRO)

PrincipeModèle Relationnel + Intégration de quelques concepts OBJET :-Types utilisateur-Encapsulation-Héritage-Objets complexes

PostgreSqlSGBDRO libreMise en œuvre de la quasi-totalité du modèle relationnelApport objet : classes, héritage, types, fonctions.

OracleSGBDRO commercialMise en œuvre de la quasi-totalité du modèle relationnelApport objet : classes, héritage, types, fonctionsNombreux utilitaires d’administration et d’audit

SYSTEMES D’INFORMATION & BASES DE DONNEES