Newsgroup: it.comp.software.database
Titolo: database relazionali o object oriented?

Salve,.
Qualcuno ha esperienza di database object oriented?
L'unico database object oriented che conosco e' postgresql che pero' ho
sempre utilizzato come normale database relazionale. 
Quali sono i vantaggi o gli svantaggi nel preferire un database OO rispetto
al relazionale?
Vorrei un vostro parere.
Grazie.

Vorrei un vostro parere.
Come al solito, tutto dipende dalla natura dei dati, dall'applicazione che
vorresti scrivere e dal tuo ambiente di sviluppo.
jk
--
Jilani Khaldi
http://space.tin.it/scuola/jkhaldi

 
Beh, e' un'applicazione che dovrebbe funzionare in ambinto web, intranet.
I dati riguardano piu' che altro anagrafiche, dati relativi al personale
di un'azienda, ecc.

 al relazionale?
Tema da guerra di religione ;-)
Non conosco bene i database OO e non saprei darti
dei buoni link, pero' quando hai letto tutto il possibile
(ed hai sentito tutte le campane) dai uno sguardo anche agli
articoli di Pascal e Date su 
http://www.dbdebunk.com
 per
sentire anche la campana delle critiche.
Ciao,
--
Gianluca Hotz
Backoffice MVP (SQL Server) MCP SQL Server and MCP Windows
Vice-President of the Italian User Group for SQL Server
Founding Member of the Italian User Group for .NET
http://www.ghotz.com
http://www.ugiss.org


Allora tutto puň andre bene.



IMHO progettare uno schema OO e' molto piu' difficile, e da mie
esperienze e' anche moooolto piu' difficile modificare uno schema OO
una volta avviato il DB (vedi OPM).
Ad ogni modo, non escludo che per particolari esigenze, il modello ad
oggetti possa essere preferibile al relazionale.
 Raffaello

 Allora tutto può andre bene.
Si', concordo, a patto che tu non preveda di modificare lo schema in
futuro ... dovresti rifare praticamente tutto.
 Raffaello

futuro ... dovresti rifare praticamente tutto.
Con Mnesia lo puoi fare senza il minimo problema o rischio. E' stato progettato
e realizzato con questa funzionalità dalla sua prima versione. Ora è alla
versione 4.0.2 (se non sbaglio) ed è usato nei sistemi telecom dell'Ericksson.
Lo puoi provare, è freeware ed open source.


una volta avviato il DB (vedi OPM).
No affatto. Si usa lo stesso modello relazionale ma semplicemente senza essere
normalizzato. Cosě, almeno, funziona Mnesia.


> Lo puoi provare, č freeware ed open source.
Non riesco a trovare il link per il download.
Tu hai esperienza con questo database?
Ciao.

Tu hai esperienza con questo database?
Evidentemente. Lo sto usando per lo sviluppo di due grosse applicazioni:
1- una web per i corsi online per un'università italiana.
2- una client/server distriuita su più nodi Erlang e che usa un database
distribuito Mnesia.
Le due applicazioni (prototipi) girano su una rete mista (Linux/Windows)
intranet e funzionano molto bene. Erlang/Mnesia non è vaporware ma qualcosa che
funziona realmente.
Mnesia permette di modificare la struttura del database senza fermare
l'applicazione (lo stesso vale per tutte le applicazioni Erlang), repliche,
parallelismo... Sono cose veramente eccezionali a persare che tutto è di prima
qualità, colladatissimo e gratuito .
In futuro che i PC saranno multiprocessori ambiente paralleli come Erlang/Mnesia
rappresentano un punto di riferimento nel futuro della programmazione
distribuita e web.
Io credo che se Erlang/Mnesia fosse stato sviluppato dalla M$ sarebbe finito il
mondo dell'informatica per gli altri concorrenti. Ma gli svedesi sono seri e non
hanno nulla a che fare col vaporware. 
Hanno presentato la loro tecnologia solo quando è diventata matura e dopo aver
sviluppato con essa tutti i loro sistemi di telecomunicazioni in diverse nazioni
del mondo. Questa è informatica. Questa è serietà.
Continuate col VB, ASP, GASP, .NET, C#, Access, VBA. Continuate con l'erbetta e
l'acqua salata della M$.


 distribuito Mnesia.
Tu sei quello che scrive su Linux&C?
Ti leggo spesso.
Comunque a questo punto mnesia mi sta incuriosendo parecchio.
Pensi che per un'applicazione relativa alla gestione delle presenze del
personale di un'azienda possa essere adatta l'accopiata erlang mnesia?
Puoi rispondermi in privato per non andare o.t.
Grazie, ciao.

personale di un'azienda possa essere adatta l'accopiata erlang mnesia?
Sicuramente. Soprattutto se si tratta di un'applicazione complessa con database
distrbuito, con la possibilità di modificare la struttura del database, del
codice delle applicazioni a run-time. In Erlang la replica dei dati nei
database, l'esecuzione parallela dei moduli su diversi PC e su diversi
processori sono di serie. In Erlang i crash di sistema sono senza conseguenze.
Ho provato tempo fa di provare qualcosa di simile in Java e Ruby, ma i risultati
sono stati deludenti. Con Erlang mi è bastato solo leggere i manuali per
iniziare a fare cose che prima pensavo che esistessero solo in teoria!


Ancora 2 domande:
Inets cos'e'?
Io uso abitualmente linux con debian e conseguentemente uso Apache.
Dici che ti e' bastato leggere alcuni manuali di erlang per essere
subito produttivo, quali? 
Li trovo in rete?
Ciao e scusa per lo stress.

Li trovo in rete?
http://www.erlang.org


 applicazioni scritte in Erlang stesso. Inets si configura in due minuti.
Non ho trovato il pacchetto deb di inets per la debian, posso comunque
continuare ad utilizzare apache con erlang?
Ciao.

continuare ad utilizzare apache con erlang?
Perchè non scarichi il .tar.gz, lo scompatti e lanci i soliti tre comandi:
./configure
make
make install
e avrai un completissimo fresco sistema Erlang.
Inets e Apache non sono comunque rivali. Puoi far girare Apache sulla classica
porta TCP 80 e Erlang sulla solita 8888. Ma Erlang insieme a Mnesia e Intets è
una soluzione omogenea difficilmente da trovare in altri sistemi. Erlang è il
linguaggio col quale è stato scritto Mnesia (solo 20.000 linee di codice Erlang)
e Inets è scritto lo stesso in Erlang. Mnesia usa Erlang al posto dell'SQL e
Inets usa lo stesso Erlang come linguaggio di scripting per il web. E' una
soluzione elegantissima, molto conveniente e omogenea per le applicazioni web e
c/s realmente distribuite. Tutti i pacchetti sono maturi, collaudati e
funzionano in piena sinergia.
Per ottenere le stesse cose ho dovuto per anni usare soluzioni eterogenee: 
Apache + Ruby con moduli per Apache + InterBase + eRuby; e prima ancora col PHP
al posto di Ruby e Postgres al posto di InterBase per ottenere qualcosa
difficile da gestire man mano che aumneta di complessità.
<ot>
Ma perchè secondo voi c'è qualcuno che usa ancora ASP e Access per sviluppare
applicazioni web?
</ot>


 e avrai un completissimo fresco sistema Erlang.
Scusa ma.....fammi capire bene.
Io ho trovato e installato i pacchetti deb di erlang 8.0-4 e erlang-base 8.0-4.
Mi sembra di capire che basti.
Dovrei avere a questo punto disponibile il linguaggio, il database e il server
web.
Sbaglio?
Se non sbaglio pero' sul sito 
www.erlang.org
 ho trovato info sul linguaggio e 
sul database ma niente che riguardi inets.
Ciao, e scusa se ti sto stressando.

sul database ma niente che riguardi inets.
http://www.erlang.org/doc/r8b/lib/inets-2.6.5/doc/html/index.html
per lanciare Inets basta lanciare Erlang (semplicemente digitando "erl" a riga
di comando) e poi dalla shell di Erlang:
httpd:start().
ora vai con un browser e:
http://il_tuo_server:8888
e navighi.
Tutto qui.
