Basi di Dati R-dbms e
OO-dbms
Mario Capurso
http://info.bazarinfo.info
Modelli orientati ad oggetti ?
Era proprio necessario ?
Modelli “classici”
 Modello Gerarchico
 Modello Reticolare
 Modello Relazionale
Ad Oggetti ?
Perche’ ? Quale ? Come ?
Un modello ad oggetti...
Gli oggetti
 Le proprieta’
 Le classi
 L’aggregazione
 La generalizzazione
 I metodi
 Gli eventi

Ad oggetti ? Perche’ ?
E’ piu’ “naturale” (il modello dei dati)
 E’ piu’ “riusabile” (il software)
 E’ piu’ facile da apprendere ed usare (un
linguaggio)
 E’ piu’ “manutenibile” (un sistema
software)
 E’ meno costoso (tutto)

L’affermazione del modello
relazionale
Codd 1971 (IBM)
 SQL 1975 (IBM)
 System R (IBM)
 Datatrieve (DEC) 1980
 ORACLE (R.T.Inc.) 1982
 ISO SQL (fine ‘80)
 Informix, Ingres, DB2, dBASE II...

Modello relazionale e
Successo: perche’ ?
Maturo e standardizzato
 Indipendente da fornitore H/W e S/W
 Affidabile
 Con prestazioni ottime
 Relativamente poco costoso
 Conosciuto dagli informatici

Un vero cavallo da soma
I Leader del Mercato R-DBMS

Oracle
– Multipiattaforma
– Ambiente di sviluppo ricco e avanzato
– Stabile, maturo, scalabile

Microsoft SQL Server
– Monopiattaforma
– Supportato da ambienti Microsoft
– Marketing agressivo
I Leader del Mercato degli
OO-DBMS negli anni 90
Objectstore
 Gemstone
 Orion
 Iris
 CA-Jasmine
 Ontos
 O2

R-DBMS - I difetti
Frattura concettuale con OOA e OOD
 Richiede normalizzazione
 La conoscenza e’ solo nella mente di
analisti e programmatori
 Se si guadagna in prestazioni
(denormalizzazione) si perde in consistenza
e indipendenza

OO-DBMS - I motivi della
frenata
Immaturi
 Non standardizzati
 Costosi
 Prestazioni deludenti
 Spesso integrati con un linguaggio (C++,
Smalltalk)
 Frattura concettuale con linguaggi di terza
generazione e ambienti “legacy”

Frattura concettuale e
soluzioni
Linguaggi OO e R-DBMS (JDBC)
 Linguaggi 3GL e 4GL e R-DBMS (ODBC)
 3GL e 4GL e OO-DBMS (ODBC)
 Soluzioni Object-Relational
 Linguaggi OO e OO-DBMS (JDBC)
 Linguaggi OO e OO-DBMS (persistenza
“trasparente”)

Esperienze di un venditore di
software usato




Uso di Objectstore e C++ o Gemstone e Smalltalk:
semplice ma non riusabile
Uso di Java (JDBC) e ambienti relazionali:
semplice e riusabile ma con attenzione
La trasmissione di un oggetto da host ad host
usando il modello relazionale e’ un grosso
problema
I relazionali stanno stretti ai linguaggi e alle
applicazioni moderne
XML e morte dei relazionali ?
XML ovvero il bisogno di modellizzare ed
inviare oggetti
 SOAP e la necessita’ di gestire oggetti nei
protocolli applicativi
 JAVA e la necessita’ di manipolare oggetti
distribuiti
Sara’ la fine per i R-DBMS ? O l’inizio di una
nuova campagna di marketing ?

Scarica

Basi di Dati R-dbms e OO-dbms