RDBMS vs ORDBMS
Un RDBMS (Relational Database Management System) è un sistema di gestione dei database (DBMS) basato sul modello relazionale. I più diffusi DBMS attualmente in uso sono RDMS. Il database Object-Relational (ORDBMS) è anche un DBMS che estende RDBMS per supportare una classe più ampia di applicazioni e tenta di creare un ponte tra paradigmi relazionali e orientati agli oggetti.
Come accennato, il precedente RDBMS si basa sul modello relazionale e i dati in un RDMS sono memorizzati sotto forma di tabelle correlate. Quindi, un database relazionale può essere semplicemente visto come una raccolta di una o più relazioni o tabelle con colonne e righe. Ogni colonna corrisponde a un attributo della relazione e ogni riga corrisponde a un record costituito da valori di dati per un'entità. Gli RDMS vengono sviluppati estendendo i modelli gerarchici e di rete, che erano due sistemi di database precedenti. Gli elementi principali di un RDMS sono i concetti di integrità relazionale e normalizzazione. Questi concetti sono basati sulle 13 regole per un sistema relazionale sviluppato da Ted Codd. Seguendo tre fondamentali importanti dovrebbe essere seguito da un RDMS. In primo luogo, tutte le informazioni devono essere conservate sotto forma di tabella. In secondo luogo, ogni valore trovato nelle colonne della tabella non dovrebbe ripetersi e infine l'uso di Standard Query Language (SQL). Il più grande vantaggio degli RDBMS è la facilità con cui gli utenti possono creare accesso ed estendere i dati. Dopo aver creato un database, l'utente può aggiungere nuove categorie di dati al database senza modificare l'applicazione esistente. Ci sono anche alcune limitazioni notevoli negli RDBMS. Una limitazione è la loro mancanza di efficienza quando si lavora con linguaggi diversi da SQL e anche il fatto che tutte le informazioni devono essere nelle tabelle in cui le relazioni tra entità sono definite da valori. Inoltre, gli RDMS non hanno spazio sufficiente per gestire dati come immagini, audio digitale e video. Attualmente la maggior parte dei DBMS dominanti come la famiglia DB2 di IBM, Oracle, Microsoft Access e SQL Server sono in realtà RDMS.
Come accennato in precedenza, ORDBMS fornisce una via di mezzo tra RDMS e database orientati agli oggetti (OODBMS). Si può semplicemente dire che ORDBMS mette un front end orientato agli oggetti su un RDBMS. Quando un'applicazione comunica con un ORDBMS, normalmente agirà come se i dati fossero archiviati come oggetti. Quindi ORDBMS convertirà le informazioni dell'oggetto in tabelle di dati con righe e colonne e gestirà i dati così come sono stati memorizzati in un RDBMS. Inoltre, quando i dati vengono recuperati, restituirà un oggetto complesso creato riassemblando i dati semplici. Il più grande vantaggio di ORDBMS è che fornisce metodi per convertire i dati tra il formato RDBMS e il formato OODBMS, in modo che il programmatore non abbia bisogno di scrivere codice per convertire tra i due formati e l'accesso al database sia semplice da un linguaggio orientato agli oggetti.
Anche se RDBMS e ORDBMS sono entrambi DBMS, differiscono nel modo in cui interagiscono con le applicazioni. Le applicazioni che utilizzano RDBMS devono svolgere un lavoro supplementare quando si memorizzano dati complessi mentre ORDBMS fornisce il supporto per questo. Ma a causa della conversione interna tra formati di dati, le prestazioni degli ORDBMS possono essere ridotte. Pertanto, la scelta dell'uno sull'altro dipende dai dati che devono essere memorizzati / gestiti.