Differenze principali tra DBMS SQL e DBMS NoSQL

Differenze principali tra DBMS SQL e DBMS NoSQL

I sistemi di basi di dati NoSQL non sono dotati di un modello come quello nel caso relazionale. Ci sono molte implementazioni, ognuna diversa dall’altra, nessuna è migliore dell’altra in modo assoluto ma può esserlo in una particolare situazione. Qui di seguito, le principali differenze tra le due tipologie di DBMS SQL e NoSQL.

Differenze principali tra DBMS SQL e DBMS NoSQL
Differenze principali tra DBMS SQL e DBMS NoSQL

DBMS SQL

struttura e tipi di dato

I database relazionali che utilizzano SQL per memorizzare i dati necessitano di una struttura con degli attributi definiti, a differenza dei database NoSQL che possiedono una struttura più libera.

query

In modo indipendente dalle loro licenze, tutti i database relazionali implementano in una certa misura il linguaggio standard SQL, possono cioè, essere interrogati utilizzando SQL. Ogni database NoSQL implementa invece un modo proprietario e differente per operare con i dati che gestisce.

scalabilità

Entrambe le soluzioni possono scalare verticalmente. Le soluzioni NoSQL di solito offrono strumenti che permettono di scalare orizzontalmente molto più facilmente, essendo applicazioni più moderne e più semplici.

supporto

I DBMS hanno una storia molto più lunga ed è molto più facile trovare supporto gratuito o a pagamento. dati complessi I database relazionali per natura sono la soluzione di riferimento per l’esecuzione di query complesse e per le problematiche sulla conservazione dei dati.

DMBS NoSQL

Nei DBMS NoSQL a documenti, è rilevante l’assenza delle relazioni. Esistono due meccanismi con cui vengono collegate le informazioni:

embedding

Significa annidare un oggetto JSON all’interno di un altro. Questa tecnica sostituisce molto spesso le relazioni 1-a-1 e 1-a-molti. È tuttavia sconsigliabile utilizzarla quando i documenti (quello annidato e quello che lo contiene) crescono di dimensione in maniera sproporzionata tra loro, oppure se la frequenza di accesso ad uno dei due è molto minore di quella dell’altro;

referencing

Somiglia molto alle relazioni dei RDBMS, e consiste nel fare in modo che un documento contenga, tra i suoi dati, l’id di un altro documento. Molto utile per realizzare strutture complesse, relazioni molti-a-molti oppure casistiche non rientranti tra quelle consigliate per l’embedding al punto precedente.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *