Chapitre 1 : Introduction aux BD et SGBD · SGBD Relationnel Objet XML Autres Modèle Physique...

35
Chapitre 1 : Introduction aux BD et SGBD Mr. Mohamed Salah MEDDEB http://meddeb.jimdo.com

Transcript of Chapitre 1 : Introduction aux BD et SGBD · SGBD Relationnel Objet XML Autres Modèle Physique...

Chapitre 1 :

Introduction aux BD et SGBD

Mr. Mohamed Salah MEDDEB

http://meddeb.jimdo.com

Introduction Les entreprises gèrent des volumes de données très grands

(Giga, Terra, Péta) octets

Numériques, Textuelles, Multi-média (images, films,...)

Il faut pouvoir facilement

Archiver les données sur mémoires secondaires permanente

Retrouver les données pertinentes à un traitement

Mettre à jour les données variant dans le temps

Les données sont structurées et identifiées

Données élémentaires ex: Votre salaire, Votre note en BD

Données composées ex: Votre CV, vos résultats de l'année

Identifiant humain ex: CIN ou machine: ASUSK55V,

Les trois dimensions d'une application

3

Interface

Données

SGBD

Bases de Données

Fichiers

Langages de programmation /

manipulation de données

Stations de travail

Traitements

Fichiers : Présentation

Définition

Un fichier est une unité de stockage logique de

l’information.

Abstraction des propriétés physiques des dispositifs de

stockage

la correspondance est établie par le SE

Attributs des fichiers

Nom, taille, type, protection, date, propriétaire, ...

Opérations sur les fichiers :

Création, Ecriture/Lecture, Suppression ,Concaténation ...

4

Fichiers : Type et structures

Type de fichiers

exécutable, commande, texte, ...

Certains SE supportent et reconnaissent le type de fichiers

Windows utilise les suffixes des noms de fichiers : .exe,

.bat, .txt, …

Unix ne supporte pas le typage des fichiers

Structure interne d’un fichier

suite d’enregistrements

suite d’octets (Unix, MS-DOS)

5

Approche fichier avec PCs

6

Bibliothèque Service social

Appli

En Cobol

Appli

en Java

Appli

en C

Fichiers Elèves

et UVs

Fichiers Elèves

et Livres

Fichiers Elèves

et Chambres

Direction des études

Approche fichiers + SGF

7

Application bibliothèque

SGF

Fichier Elèves

* 2

Description du fichier des Elèves

Edition du fichier Elèves

par ordre alphabétiques

Programme 1

Description du fichier des Elèves

Mise à jour du fichier Elèves

via nom élève

Programme 2

Problèmes de l’approche fichier

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

Confidentialité

Multiplicité des traitements, des langages, des matériels

Maintenance et gestion de pannes difficile

8

Un peu d'histoire sur les BD

Années 60:

Récipients logique de données fichiers sur dique

Accès séquentiel puis sur clé

Lire (Nomf, Article), Ecrire (Nomf, Article)

Lire (Nomf, Article, Clé), Ecrire (Nomf, article, Clé)

Années 70:

Avènement des Bases de Données Réseaux (BD)

Ensemble de fichiers reliés par des pointeurs

Langage d'interrogation par navigation

Années 80:

Avènement des Bases de Données Relationnelles (BDR)

Relations entre ensemble de données

Langage d'interrogation par assertion logique

9

L’approche ‘‘Bases de données’’ Définition

Une base de données est un ensemble structuré de données

enregistrées sur des supports accessibles par l’ordinateur

pour satisfaire simultanément plusieurs utilisateurs de façon

sélective et en un temps opportun.

C’est un ensemble de données non redondantes logiquement

liées et placées en ensemble, et qui permettent d’être

utilisées par des applications différentes,

Ensemble des données informatiques structurées suivant un

schéma de données, directement accessibles par des

utilisateurs différents, concurrents et compétiteurs.

10

Approche BD centralisée

11

Terminaux

PC Windows

PC Linux

PC

NT

Appli C

Appli JavaAppli Cobol

SGBD

Elèves

Uvs

Livres

Chambres

Description

BD

BD

Approche BD client/serveur

12

PC Windows

PC Linux

PC

NT

Appli C

Appli Java

Appli Cobol Elèves

Uvs

Livres

Chambres

Description

BD

BD

SGBD

Apports de l’approche BD

Intégration :

Description unique et globale des données

Eviter les redondances

Eviter les incohérences

Indépendance :

Indépendance entre données et traitements

Séparation entre les descriptions logiques et physiques des données

13

Apports de l’approche BD

Sécurité : Contrôle sémantique des données

Protection contre les accès non autorisés

Protection contre les pannes

Facilités pour l’utilisateur : 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

14

Modélisation des données

Modèle de données :

Ensemble de concepts pour décrire :

Les données

Les liens entre les données

La sémantique des données

En général, un ensemble d’opérations est associé pour manipuler les données

Formalisme de description :

Textuel

Graphique

Mathématique

Exemples de modèles :

Entité/association [Chen 76]

Hiérarchique/réseau

Relationnel

Objet, relationnel-objet15

Modèles BD

16

Modèle Entité/Association [Chen 76]

1,1

0,1

0,1

0,n

3,n1,n

UV

code

nbH

coord

Eleve

num

nom

age

adresse

Livre

cote

titre

Chambre

no

prix

S’inscrire

note

Emprunter

datePret

Louer

Modèles BD

17

Critique du modèle Entité/Association

Avantages

Sémantique riche

Extension aux concepts

objets (héritage, ...)

Aspect visuel

Modèle de conception de

BD

Inconvénients

Uniquement un modèle de

description de données

Pas de langage de

manipulation associé

Pas de SGBD E/A

Pas un modèle

d’implantation de BD

Modèles BD

18

Modèle hiérarchique

Système IMS d’IBM conçu à la fin des années 60

pour le programme Appolo (NASA)

Exemple

UV

Élève

ChambreLivre Elève

UV

Modèles BD

19

Modèle hiérarchique (suite) Schéma BD

Structure arborescente (forêt)

BD Collection d’enregistrements reliés par des pointeurs

Langage de manipulation Navigationnel et procédural

Utilisation de pointeurs

(Exemple du langage DL/1 du système IMS)

Problèmes : Pas d’indépendance logique/physique

Redondance des données, risques d’incohérence

Modèles BD

20

Modèle réseau

Modèle défini par le groupe DBTG du comité

CODASYL en 1971 (revu en 1978)

Exemple

Modèles BD

Chambre

Élève

InscritLivre

UV

21

Modèle réseau (suite) Schéma BD

Structure de graphe orienté acyclique (DAG)

BD

Collection d’enregistrements reliés par des pointeurs

Langage de manipulation

Navigationnel et procédural

Utilisation de pointeurs

Standard CODASYL 71, 78

Systèmes

IDS2 d’Honeywell (1975), Total de Cincom (1974), Adabas de Soft. Ag (1978)

Problèmes

Pas d’indépendance logique/physique

Modèles BD

22

Modèle relationnel

[CODD 70] « A Relational Model for Large Shared Data Banks »

Exemple

Élève(num, nom, adresse, age)

UV(code, nbH, coord)

Inscrit(numElève, codeUV, note)

Livre(côte, titre, numElève, datePrêt)

Chambre(no, prix, numElève)

Modèles BD

23

Modèle relationnel (2)

« MLD » Ecole

UV

CODE

NBH

COORD

ELEVE

NUM

NO

NOM

AGE

ADRESSE

LIVRE

COTE

NUM

TITRE

DATEPRET

CHAMBRE

NO

NUM

PRIX

INSCRIT

CODE

NUM

NOTE

Modèles BD

24

Modèle relationnel (3) Schéma BD

Structure de relation

BD

Ensemble d’enregistrements reliés par des valeurs

Langage de manipulation

Ensembliste

Déclaratif

Standard international [ SQL 86, 89, 92 ou SQL2]

Prototypes de recherche

System/R chez IBM (1976), Ingres à Berkeley (1976)

Systèmes commerciaux

SQL/DS et DB2 d’IBM (1982), Oracle (1983), Ingres (1983), Informix (1981), Sybase (1984), SqlServer (1998)

MySQL (1995)

Access

Modèles BD

25

Modèle relationnel (suite)

Avantages

Indépendance logique/physique

Langage de manipulation simple

Basé sur une théorie mathématique solide

Standard

Modèles BD

Modélisation du réel

26

Réel

Modèle

conceptuel

• Indépendant du

modèle de données

• Indépendant du

SGBD

Modèle

logique

•Dépendant du

modèle de données

• Indépendant du

SGBD

Relationnel Objet XML Autres

Modèle

Physique

•Dépendant du

modèle de données

•Dépendant du SGBD

• Organisation physique des données

• Structures de stockage des données

• Structures accélératrices (index)

Médecin effectue Visite

BD ET SGBD

BD :

Collection de données décrites selon un certain

modèle

SGBD :

Système logiciel gérant les données d’une BD, selon

un modèle fixé

Un SGBD doit permettre la définition, la manipulation

et le contrôle des données

27

28

But et moyens d’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)

29

Fonctionnalités d’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

30

Fonctionnalités d’un SGBD (suite)

Gestion de versions des BD

Gestion de la répartition

Gestion d’objets complexes (image, document,

...)

Gestion de connaissances, règles de déduction

Environnement de développement (AGL)

Les niveaux des BD

31

Vues externes

chaque vue représente

la partie de la bd relative

à chaque utilisateur / application

Schéma conceptuel

vue globale de la base :

les données stockées

et les relations parmi les données

Schéma physique

décrit comment les données sont stockées

dans la bd + les index

R1(A number(10), B string, …, primary key (A), ...)

….

Rn (X number(15), Y string, …, primary key (X), …)

Schéma logique

Représente un modèle de données

conforme au modèle ciblé de SGBD

(par ex. SGBDR)

Architecture d’un SGBD (ANSI/SPARC)

32

33

Architecture d’un SGBD

Définition des

schémas de la BDManipulation de la BD

Programmeur d’applicationAdministrateur Utilisateur terminal

BDMétabase

Traducteur LDD Traducteur LMD

Noyau SGBD

SGBD

34

LDD

Définition logique des données Schéma conceptuel global

Schémas des vues utilisateur

Structure des données et liens entre les données

Définition physique des données Schéma physique des données

Méthodes de placements et d’accès

Contrôle des données Contraintes d’intégrité

Droits d’accès

35

LMD

Objectif

Interroger et mettre à jour les données (extraire, ajouter, supprimer, modifier )

Style procédural

Exprimer la séquence des opérations d’accès aux données pour obtenir le résultat

Modèle hiérarchique et réseau

Langage navigationnel

Norme CODASYL 71, 78 pour modèle réseau

Dépendant du niveau physique

Intégration dans un LPG (Cobol pour modèle réseau)

Style déclaratif

Exprimer l’information souhaitée sans dire la façon dont on accède à l’information

Modèle relationnel

Langage ensembliste

Indépendant du niveau physique

Norme SQL 86, 89, 92

SQL « seul » et SQL « intégré » dans un LPG « classique »