ORM + DB relazionale può essere considerato il sistema di gestione del database oggetto-relazionale?
-
28-10-2019 - |
Domanda
Mi chiedo perché ORM sia così popolare e tutti usano le implementazioni ORM delle specifiche JDO e JDA, invece di utilizzare database di oggetti che implementano anche queste specifiche. Le prestazioni sono molto meglio utilizzando il database di oggetti.
Ho ragione se dico che è perché gli sviluppatori devono utilizzare sia il modello di oggetti che il modello relazionale nelle loro applicazioni?
Che dire di Ordbms? C'è qualche ORDBM (che merita un tentativo) in giro o può oggetto di mappatura relazionale insieme al database relazionale essere considerati ordinati?
Soluzione
Il motivo principale per cui le persone usano un RDBMS con un o mapper piuttosto che un database di oggetti è che gli RDBM sono profondamente radicati, ben compresi e ben supportati da tutti. Se usi un database di oggetti avrai problemi
- Trovare persone per sostenerlo
- Utilizzando gli strumenti esistenti per report, backup, ecc.
- Avere altre applicazioni accede ai dati
Probabilmente ci sono anche molti dubbi (giustificati o no non posso dire) se i database di oggetti possano davvero offrire le stesse o migliori prestazioni e sicurezza in uno scenario di parole reali.
Altri suggerimenti
Nella mia esperienza, l'utilizzo di un database di oggetti ha portato molto meno codice e un progetto molto più pulito.
Ha fatto la differenza tra una curva di apprendimento di 6 settimane per un RDBMS + ORM (LINQ-to-ENITY) e una curva di apprendimento di 1 settimana per i database di oggetti (per DB4O).
I DBMS comunemente usati che potresti avere familiarità con (ad esempio Oracle, SQL Server, DB2, MySQL, PostgreSQL) non sono relazionali. Si basano sul modello SQL, che è qualcosa di molto diverso anche se in qualche modo assomiglia al modello relazionale.
Un Object-Relational Dbms significa la stessa cosa di a Relazionale Dbms. È un altro modo per dire che un RDBMS in linea di principio supporterà qualsiasi insieme illimitato di tipi di dati e operazioni relazionali su di essi. Il software di mappatura O/R affronta davvero il fatto che SQL DBMS non lo fa molto bene.