Introduction aux bases de données relationnelles

publicité
Notion de bases de données
Contexte technique
Structure en mémoire centrale (MC)
Fichiers
Bases de données
2
Notion de bases de données
Contexte technique
Notion de bases de données
Contexte technique
Stockage persistant sur disque
«Gros» volumes de données
Langages de programmation et SGF
Contexte mono-utilisateur (en général)
Principes
Stockage des données dans la mémoire volatile d’un ordinateur
Problèmes
Stockage temporaire
«Petits» volumes de données
Langages de programmation
Contexte mono-processus (mono-utilisateur en général)
3
4
Introduction - 1
Notion de bases de données
Contexte technique
Direction des études
Bibliothèque
Service social
Appli
en Java
Appli
En Cobol
Notion de bases de données
Contexte technique
Application bibliothèque
Programme 1
Appli
en C
Description du fichier des Elèves
*2
Edition du fichier Elèves
par ordre alpha
Programme 2
Description du fichier des Elèves
Fichier Elèves
Mise à jour du fichier Elèves
via nom élève
SGF
Fichiers Elèves
et UVs
Fichiers Elèves
et Livres
Fichiers Elèves
et Chambres
5
!"
#
Notion de bases de données
Contexte technique
Difficulté à saisir les liens entre les données
Pas de partage de données entre les utilisateurs
Pas de vision globale des données
Redondance des données
Risque d'
incohérence des données
Pas d'
indépendance entre les données et les traitements
Problème de gestion de la sécurité des données
Multiplicité des traitements, des langages, des matériels
6
Notion de bases de données
Contexte technique
Stockage persistant sur disque
«Très gros» volumes de données
Langage de requêtes et langages de
programmation SGBD
Contexte multi-utilisateurs
7
8
Introduction - 2
Notion de bases de données
Contexte technique
PC Windows
Appli Cobol
PC
NT
PC Windows
BD
Appli C
Appli Java
Notion de bases de données
Contexte technique
$
Elèves
Uvs
Livres
Chambres
Elèves
Uvs
Livres
Chambres
Appli Cobol
SGBD
PC
NT
SGBD
BD
Appli Java
Description
BD
Description
BD
Appli C
PC Linux
PC Linux
Terminaux
9
#
10
Notion de bases de données
Apport BD
Intégration :
#
Notion de bases de données
Apport BD
%&'
Sécurité :
Contrôle sémantique des données
Protection contre les accès non autorisés
Protection contre les pannes
Description unique et globale des données
Eviter les redondances
Eviter les incohérences
Facilités pour l’utilisateur :
Indépendance :
Partage des données
Vision « haut niveau » et « personnalisée » des données
Manipulation « aisée » des données
Accès efficaces aux données
Répartition des données et des traitements
Indépendance entre données et traitements
Séparation entre les descriptions logiques et
physiques des données
11
12
Introduction - 3
Notion de bases de données
Domaines d’application
()
Architecture de référence
#
Volume de
données
Groupe ANSI/X3/SPARC (1975)
Complexité des
traitements
Intensité du
service
Applications
≈ Go
transactionnelles
Interrogation +
Mise à jour
Temps de
réponse < 2 s.
> 100 tps
≈ To
Interrogation
Temps de
réponse en mn
ou h
Notion de tpm
Application
d’aide à la
décision
Datewarehouse
Datamining
Schéma externe 1
….
Schéma externe n
Schéma conceptuel
Schéma physique
TPC (Transaction Processing Council) Benchmarks systèmes transactionnels
13
Architecture de référence
* "
Schéma externe pour
appli Bibliothèque
- Elève
- Livre
14
Schéma externe pour
appli Direction des études
- Elève
- UV
Schéma conceptuel
Schéma Physique
Schéma externe pour
appli Service social
- Elève
- Chambre
Comment les données
sont vues par les
« utilisateurs »
Représentations logique
Multiples
Globalité des données
Représentation logique
Unique
Globalité des données
Représentation physique
des données. Comment
les données sont
mémorisées (fichiers,
index, …)
Unique
15
Architecture de référence
Indépendance physique
Indépendance entre les structures de stockage et les structures
de données
Pouvoir modifier l'
organisation physique sans modifier les
programmes d’application
Exemple: ajouter un index
Indépendance logique
Pouvoir modifier le schéma conceptuel sans modifier les
programmes d’application
Exemple : ajouter un attribut
16
Introduction - 4
+ # ,
#
-
Qu’est-ce qu’un SGBD ?
But
Moyens mis en oeuvre
Fonctionnalités
Architecture
Langage de définition des données (LDD)
Langage de manipulation des données (LMD)
Interface avec un LPG
Java et les SGBD
Transaction
Les utilisateurs d’un SGBD
Qu’est-ce qu’un SGBD ?
" .
But :
Simplifier et faciliter l’accès aux données de la base
Assurer une grande sécurité du système d'
information
Moyens :
En offrant une vision de « haut niveau » des données, via un
modèle logique des données
En se chargeant de faire la correspondance avec la vision de «
bas niveau » des données (structures de stockage et méthodes
d’accès)
17
Qu’est-ce qu’un SGBD ?
Langage de définition et de manipulation des données (LDD +
LMD)
Gestion de l’intégrité
définition des CI, Trigger
Gestion de la persistance
Structures de stockage et méthodes d’accès
cluster, index
Gestion de la concurrence (transaction, verrouillage)
Gestion de la sécurité de fonctionnement
transaction, journaux,
mécanisme de reprise sur panne
Gestion des droits
identification, attribution de droits
Optimisation
algorithme, statistiques
Interface avec les langages de programmation
18
% '
Qu’est-ce qu’un SGBD ?
Gestion de versions
Gestion de la répartition
Gestion d’objets complexes (image, document,
...)
Gestion de connaissances, règles de déduction
Environnement de développement (AGL)
19
20
Introduction - 5
Qu’est-ce qu’un SGBD ?
#
Administrateur
Programmeur d’application
Définition des
schémas de la BD
Utilisateur terminal
/
#
Qu’est-ce qu’un SGBD ?
Le concepteur
Contexte de travail : niveau conceptuel
Construction du schéma conceptuel avec un modèle de
données
Manipulation de la BD
Administrateur BD
Traducteur LDD
Contexte de travail : les 3 niveaux.
Définit et màj les schémas logiques
Définit les CI + Vues + droits d’accès
Définit les schémas physiques (structures de stockage +
stratégies d’accès)
Utilise le LDD et DD
Traducteur LMD
Noyau SGBD
Métabase
BD
21
/
#
%
22
Qu’est-ce qu’un SGBD ?
'
Développeur d’applications
Contexte de travail : niveau externe et conceptuel
Utilise le LMD + LPG
Écrit des programmes pour interroger, mettre à jour et traiter les
données
Connaît les schémas logiques et physiques
Utilisateur terminal
Contexte de travail : niveau externe
« Averti »: interroge la BD en utilisant un LMD
« Naïf »: utilise les programmes d’application
23
Introduction - 6
Téléchargement