Blog

tre developer in miniatura alle prese con scaffali, database e ingranaggi

Database relazionali e non relazionali: le differenze

L’importanza dei database

Al giorno d’oggi tutto viene salvato all’interno di un database, che si tratti del like a una foto della nostra fiamma su Instagram, di un commento sotto il post del momento su Facebook o della cartella clinica di un paziente.

I database mantengono la memoria della nostra storia digitale. Per questo motivo sono diventati fondamentali per l’umanità e, altrettanto fondamentale, è per uno sviluppatore comprendere il loro utilizzo.

Che cos’è un database?

Stando alla definizione “un database è una raccolta di informazioni organizzata in modo che possa essere facilmente accessibile, gestita e aggiornata”.

Non è molto chiara come definizione, vero?

Facciamo un esempio.

Immaginiamo di gestire un blog, in qualche modo dobbiamo tener traccia degli utenti registrati al nostro blog, degli articoli pubblicati e dei commenti che gli utenti scrivono sotto gli articoli.

Per ognuna di queste entità avremo una tabella: una in cui salveremo le informazioni degli utenti che si registrano, una in cui salveremo le informazioni che compongono un articolo e una in cui salveremo i commenti che verranno scritti.

Quindi, un database, non è altro che l’insieme di queste tabelle.

I database non sono importanti solo per la persistenza dei dati, essi ci permettono anche di modificarli e aggiornarli e ogni database ha un linguaggio con cui può essere interrogato.

Tra le operazioni più importanti che si possono eseguire, oltre alla lettura dei dati, ci sono anche la cancellazione e la modifica.

Per la maggior parte dei database, questo linguaggio è il SQL che sta per Structured Query Language. Questo linguaggio ci permette di interagire con i dati nel database tramite delle interrogazioni chiamate query.

Database: relazionali e non relazionali

I database si dividono in due tipi: relazionali e non relazionali.

È compito del programmatore decidere quale dei due tipi utilizzare per gestire i dati all’interno del proprio sito.

Quali sono le loro principali differenze?

Cos’è un database relazionale

Un database relazionale, come ci suggerisce il nome, è basato sul modello entità – relazione.

Vi ricordate il nostro blog? Bene. Utilizzando un database relazionale, tutti i nostri dati all’interno delle tabelle sarebbero messi in relazione tra di loro. Ad esempio, un utente sarebbe associato ai post che ha scritto e ai commenti che ha lasciato. Un commento sarebbe associato all’utente che l’ha scritto e al post sotto cui è stato scritto e così via.

I dati, quindi, sarebbero organizzati in tabelle, dove ogni tabella rappresenta un tipo di dato (es. post, utenti e commenti), e in relazioni tra questi dati.

Un esempio:

Questo è un esempio di tabella users (utenti), la tabella che tiene traccia degli utenti registrati.

Come possiamo notare, un utente non è altro che l’insieme delle informazioni ad esso associato e ce n’è uno per riga.

Un utente è formato quindi da: id, nome, password etc…

L’insieme delle tabelle è gestito da un RDBMS: Relational Database Management System.

Questi strumenti ci permettono di interagire con i nostri database per interrogarli e compiere azioni sui dati.

Tra i database relazionali più famosi e utilizzati ci sono MySQL e PostgreSQL.

Cos’è un database non relazionale o NoSQL?

Racchiudere tutti i concetti di database non relazionali in poche righe non sarebbe possibile poiché ce ne sono tanti e tutti diversi tra loro.

Alcuni database NoSQL sono strutturati in documenti, oggetti complessi che non seguono per forza rigida struttura organizzativa. MongoDB è uno di questi.

Questo di seguito è un esempio di dato salvato nel formato JSON con MongoDB:

Ci sono anche dei database che invece seguono una struttura a grafo con relazioni libere tra i nodi del grafi, così come altri ancora seguono il modello chiave-valore tipico degli array associativi.

Insomma, di database non relazionali ce ne sono di tutti i tipi e, data la loro diversità, servono a risolvere i problemi più complicati, quelli che non si riescono a risolvere con quelli relazionali.

Qual è la differenza tra database relazionali e non relazionali?

Abbiamo parlato di database relazionale e non relazione, ma quali sono le principali differenze?

  1. La rappresentazione che i dati hanno in essi;
  2. Nei database relazionali, i dati vengono salvati in delle tabelle seguendo un preciso schema che ogni dato deve seguire per poter essere salvato;
  3. Nei database non relazionali, invece, i dati vengono salvati in documenti e non si deve seguire per forza uno schema ben preciso.

A prescindere dalle loro differenze, spetta al programmatore decidere e valutare se è meglio avere una struttura piuttosto rigida o una meno rigida per poter salvare e manipolare i dati.

Se vuoi saperne di più sul mondo dei database. non perderti i capitoli dedicati nella nostra guida SQL in italiano!

Articoli correlati

Il linguaggio HTML (Hypertext Markup Language) è uno dei più conosciuti e diffusi: lo si trova infatti praticamente in tutte le pagine web esistenti. È una scelta popolare tra i principianti che si…
Essere uno sviluppatore web vuol dire imparare più linguaggi di programmazione per poter creare diversi tipi di applicazioni.  Per ogni applicazione, la maggior parte delle volte, …
Un buon programmatore, si sa, necessita di un ampio bagaglio di conoscenze per potersi districare tra le difficoltà che questo mestiere comporta. Oggi le richieste sul mercato sono molteplic…
UI UX design: un settore dalle mille sfaccettature Il design dell’esperienza utente (UX) e dell’interfaccia utente (UI) costituisce il fondamento su cui si costruiscono le interazioni digitali coinvo…
Nel contesto dello sviluppo web, il backend riveste un ruolo cruciale nell’assicurare il corretto funzionamento di un sito. Il backend, si occupa delle operazioni non visibili agli utenti finali, gest…
Il Data Analyst è una figura professionale sempre più richiesta nel mondo del lavoro, grazie alla sua capacità di analizzare e interpretare grandi quantità di dati per supportare le decisioni azie…

Seguici su Facebook

Scopri di più sul corso Hackademy

Inizia la tua nuova carriera nel mondo digital e tech.

Contattaci senza impegno per informazioni sul corso

Scopriamo insieme se i nostri corsi fanno per te. Compila il form e aspetta la chiamata di uno dei nostri consulenti.

Contattaci senza impegno per informazioni sul corso

Pagamento rateale

Valore della rata: A PARTIRE DA 112 €/mese.

Esempio di finanziamento  

Importo finanziato: € 2440 in 24 rate da € 112 – TAN fisso 9,37% TAEG 12,57% – importo totale del credito € 2788,68.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/07/2023 al 31/12/2023.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Pagamento rateale

Valore della rata: A PARTIRE DA 183 €/mese.

Esempio di finanziamento 

Importo finanziato: € 3990 in 24 rate da € 183 – TAN fisso 9,37% TAEG 12,57% – importo totale del credito € 4496,56.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/07/2023 al 31/12/2023.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.