Professional Documents
Culture Documents
1
BASES DE DONNEES
ORIENTEES OBJETS
BDA9.2
Trois chapitres
n Principes et modles
u2 approches :
l langage de programmation OO
=> nouveaux SGBD "purs orients-objets"
norme ODMG
l extension des bd relationnelles
=> relationnel-objet
SQL 3
uODMG, la partie modle de donnes
n Langage de manipulation de donnes d'ODMG :
OQL
n Relationnel-Objet : un exemple, Oracle
BDA10.3
Principes des
SGBD OO
Bases de donnes orientes objets
BDA9.4
Plan
n Evolution des applications et des SGBD
n Structure complexe
n Lien de composition
n Identit
n Hirarchie de gnralisation / spcialisation
n Population et persistance
n Mthodes et encapsulation
n Un exemple: FormaPerm en BD OO
n Conclusion
BDA9.5
Rappel : Fonctions des SGBD
n BD = ensemble de donnes permanentes, intgres,
partages, en accs simultan
n Intgrit de la base de donnes
n Scurit de la base de donnes
u protection contre les accs non autoriss
n Atomicit des transactions
n Fiabilit de la base de donnes
u protection conte les pannes
n Langages de requtes et de mises jour dclaratifs
n Performances
u techniques de stockage
u optimisation des requtes
BDA9.6
Nouvelles applications
uconception assiste par ordinateur
uproduction assiste par ordinateur
ugnie logiciel
usystmes d'informations gographiques
usystmes multi-mdia
urecherche et intgration de donnes de la toile
u
n Nouveaux besoins
uobjets structurs, volumineux
unouveaux types de donnes
utransactions longues
u
udveloppement des SI non satisfaisant
BDA9.7
Evolution des SGBD
n Applications plus complexes
n Cot du dveloppement des applications
=> en faire faire plus au SGBD
SGBD
BD
BD
SGBD
Application
Application
BDA9.8
Evolution des SGBD
1960
SGBD hirarchique (IMS)
SGBD rseau (CODASYL)
Jschma
langage navigationnel
1970
SGBD relationnel
Jstructure physique cache aux utilisateurs
Jmodle simple
Jformalisation => normalisation
Jlangages dclaratifs
BDA9.9
Evolution des SGBD (2)
1980
Modles smantiques (EA)
Jmeilleure reprsentation du rel
Loutils de conception uniquement
n 1986 : premiers SGBD OO
Jmeilleure reprsentation du rel au niveau logique
Jrutilisation
J1993 premire norme ODMG pour SGBD OO
( Object Database Management Group )
J1998 norme UML pour conception d'applications
OO
J1999 norme SQL3 pour SGBD relationnel-objet
BDA9.10
ODMG
n Groupe de normalisation des SGBD OO
n Norme finale publie en 2001
n A regroup de nombreux vendeurs de SGBO OO
uPoet
uArdent
uObjectivity
uVersant
uGemStone
u
et des constructeurs, des utilisateurs, des chercheurs
n www.odmg.org
BDA9.11
Le relationnel : avantages
n approche formellement dfinie (=> normalisation,
algbre)
n modle simple
n langage standard (SQL 2), dclaratif
n niveau logique (essentiellement)
n technologie la plus rpandue
n efficace pour les applications de gestion classique
BDA9.12
Le relationnel : faiblesses
n structure de donnes trop simple
u pas d'attribut complexe, ni multivalu
==> entits relles clates, jointures
u un seul type de lien (cl externe)
n pas de niveau conceptuel
n peu compatible avec les langages de programmation
u ensemble <--> lment
u dclaratif <--> impratif
u types de donnes
n donnes alphanumriques uniquement
u images, sons, vido, espace
n performances problmatiques en cas de jointures
n dveloppement et maintenance des SI insatisfaisant
n mcanisme de transactions inadapt aux nouvelles
applications
BDA9.13
Approche OO
n Ensemble de mthodologies et doutils pour
concevoir et raliser des logiciels structurs et
rutilisables, par composition dlments
indpendants. [Khoshafian + Boral]
n Objectif : productivit des programmeurs
uMoyen : rutilisation
n Concepts essentiels
uobjet encapsul
l interface visible : oprations (mthodes)
l implmentation cache : structure et code
uhritage
n Langages de programmation OO
uEiffel, Smalltalk, C++, Java
BDA9.14
Reprsentation du rel
Persistence
Gestion des disques
Partage des donnes
Fiabilit des donnes
Scurit
Langages de requtes
Indpendance logique / physique
Dveloppement
Structure complexe
Identit
Encapsulation
Classe = usine
Hritage
Redfinition
Bibliothques de classes
SGBD LP OO
SGBD OO
SGBD OO = LPOO + BD
BDA9.15
Intrt dun SGBD OO / LP OO
Cest un SGBD (mieux quun LP):
n persistence des donnes
n indpendance modles logique et physique
n LMD dclaratif
uoptimisation par le SGBD
n intgrit des donnes
n confidentialit, fiabilit, concurrence, gestion de
transactions,
BDA9.16
Intrt dun SGBD OO / SGBDR
Cest mieux quun SGBD relationnel :
n permet la manipulation dobjets structure
complexe
n interface compatible avec les LP-OO
n nouveaux types de donnes (image, son)
n versions, historiques, nouvelles transactions
n performances
BDA9.17
Diffrences entre SGBDO
n toutes les fonctions dun SGBD ?
n modles de donnes diffrents
n langage sous-jacent diffrent (C++, Smalltalk, Lisp
)
n interprt ou compil
n couplage fort ou faible avec le(s) langage de
programmation
n performances
n bibliothque de classes complte
n autres fonctions (versions, volution du schma,
temps, extensibilit )
BDA10.18
Modlisation
Bases de donnes orientes objets
BDA9.19
Diversit des modles
n Norme ODMG
mais de nombreux SGBDO ne la suivent pas.
n Ce cours dfinit :
ules principes communs aux SGBD OO
ules alternatives importantes
n Ce cours emploie une syntaxe tire de celle
d'ODMG
n Le relationnel-objet (SQL 3) sera prsent dans le
chapitre 3.
BDA9.20
Concepts principaux
Monde rel BD OO
objet objet, classe d'objets
proprit attribut
mthode
lien lien de composition
binaire
sans attribut
orient
reprsentation hirarchie de gnralisation/
multiple spcialisation, hritage
BDA9.21
OBJETS A STRUCTURE COMPLEXE
n Objectif : reprsentation directe des objets du monde rel
n Monde rel : Personne
nom
prnoms
adresse (rue, n, ville, codeNPA)
enfants (prnoms, sexe, dateNais)