Vai al contenuto principale

Database NoSQL: ciò che ogni data scientist deve sapere

Scopri a cosa servono i database NoSQL, perché i data scientist li usano e una lista dei migliori database NoSQL disponibili.
Aggiornato 29 set 2026  · 12 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Intestazione NoSQL

Esploriamo una panoramica completa dei pro e contro dei database NoSQL per i data scientist.

Data Science e database NoSQL

Fare il data scientist non significa solo costruire modelli di machine learning, ma anche saper elaborare, analizzare e comunicare al meglio i risultati a partire da dati in formati diversi.

I database SQL tradizionali sono stati usati per anni come unico tipo di database. Tuttavia, a causa dell’enorme popolarità di internet a metà degli anni ’90 e della trasformazione digitale, è emerso un nuovo tipo di dati: i database NoSQL. Sono stati introdotti in risposta ai limiti dei database SQL tradizionali. 

I database NoSQL possono essere utilizzati, ad esempio, da data scientist e machine learning engineer per archiviare dati, metadati dei modelli, feature e parametri operativi. D’altra parte, i data engineer possono sfruttarli per memorizzare e recuperare dati puliti. 

In questo blog concettuale (nessun codice richiesto), prima costruiremo la tua comprensione dei database NoSQL, per poi esplorarne l’importanza. Confronteremo anche database SQL e NoSQL e vedremo gli usi e le categorie di questi ultimi. Infine, esamineremo i database NoSQL più popolari per i data scientist.

Cosa sono i database NoSQL?

NoSQL sta per Not Only SQL, ovvero i database NoSQL hanno la particolarità di non essere relazionali perché possono archiviare dati in formato non strutturato. La seguente grafica evidenzia le cinque caratteristiche chiave principali dei database NoSQL.

Database NoSQL spiegati

Perché i database NoSQL sono importanti?

I database NoSQL sono diventati popolari nel settore per i seguenti vantaggi:

  • Dati multimodali: i database NoSQL offrono maggiore flessibilità rispetto ai database SQL tradizionali perché possono archiviare dati strutturati (ad es. dati catturati da sensori), non strutturati (immagini, video, ecc.) e semi-strutturati (XML, JSON, ecc.).
  • Scalabilità semplice: è resa agevole grazie alle loro architetture peer-to-peer, che consentono di aggiungere più macchine all’architettura.
  • Disponibilità globale: rende possibile accedere agli stessi dati simultaneamente da macchine diverse in aree geografiche differenti perché il database è condiviso globalmente.
  • Flessibilità: i database NoSQL possono adattarsi rapidamente a requisiti in cambiamento con aggiornamenti frequenti e nuove funzionalità.

Database NoSQL vs. database SQL

 

Database SQL

Database NoSQL

Linguaggio

I database SQL usano linguaggi di interrogazione strutturati per eseguire operazioni, richiedendo l’uso di uno schema predefinito per interagire meglio con i dati.

I database NoSQL, invece, usano uno schema dinamico per interrogare i dati. Inoltre, alcuni database NoSQL utilizzano una sintassi simile a SQL per la manipolazione dei documenti.

Schema dei dati

I database SQL hanno un formato predefinito e fisso, che non può essere modificato per i nuovi dati.

I database NoSQL sono più flessibili. Questa flessibilità significa che i record nei database possono essere creati senza avere una struttura predefinita e ogni record ha la propria struttura.

Scalabilità

I database SQL sono scalabili solo verticalmente, il che significa che una singola macchina deve aumentare CPU, RAM, SSD fino a un certo livello per soddisfare la domanda.

I database NoSQL sono scalabili orizzontalmente, ovvero si aggiungono macchine aggiuntive all’infrastruttura esistente per soddisfare la richiesta di storage.

Supporto Big Data

La scalabilità verticale rende difficile per i database SQL archiviare dati molto grandi (petabyte).

La scalabilità orizzontale e lo schema dati dinamico rendono NoSQL adatto ai big data. Inoltre, i database NoSQL sono stati sviluppati dalle principali aziende internet (Amazon, Google, Yahoo, ecc.) per affrontare le sfide del rapido aumento della quantità di dati.

Proprietà

I database SQL utilizzano le proprietà ACID (Atomicità, Coerenza, Isolamento, Durabilità).

I database NoSQL, invece, utilizzano le proprietà CAP (Coerenza, Disponibilità, Tolleranza alle partizioni).

Quando dovrebbero essere usati i database NoSQL?

In questo ambiente in rapida crescita e competitivo, le aziende devono raccogliere quante più informazioni possibili per soddisfare i propri obiettivi. Raccogliere dati è una cosa, ma archiviarli nell’infrastruttura giusta è un’altra sfida. La difficoltà nasce perché i dati possono essere di tipi diversi come immagini, video, testo e suoni. Usare database relazionali per archiviare questi diversi tipi di dati non è sempre una mossa intelligente. Tuttavia, la domanda resta:

Quando usare NoSQL invece di SQL?

Dovresti considerare l’uso di NoSQL quando ti trovi negli scenari seguenti:

  • Dato in continuo cambiamento: quando non sai come cresceranno in futuro il tuo sistema o le tue applicazioni, ovvero potresti voler aggiungere nuovi tipi di dati, nuove funzioni, ecc.
  • Molti dati: quando il tuo business gestisce enormi volumi di dati che potrebbero crescere nel tempo.
  • Nessuna coerenza: quando la coerenza dei dati e l’integrità al 100% non sono la tua priorità. Ad esempio, se sviluppi una piattaforma social per il tuo business, che tutti i dipendenti vedano i tuoi post contemporaneamente potrebbe non essere un problema.
  • Scalabilità e costi: i database NoSQL offrono maggiore flessibilità e possono aiutare a controllare i costi man mano che le tue esigenze di dati cambiano.

4 principali tipi di database NoSQL

I database NoSQL si dividono in quattro categorie principali. Ognuna ha le proprie specificità, quindi dovresti scegliere quella che si adatta meglio al tuo caso d’uso: di seguito abbiamo evidenziato i principali esempi di database NoSQL. Questa sezione mira a coprire ciascuno di questi database fornendone il ruolo, un elenco non esaustivo dei vantaggi e dei limiti e i relativi casi d’uso.

Categorie di database NoSQL

1. Database a documenti

Questo tipo di database è progettato per archiviare e interrogare documenti JSON, XML, BSON, ecc. Ogni documento è una riga o un record nel database ed è in formato chiave-valore. Un documento archivia le informazioni su un oggetto e i relativi dati. Ad esempio, il seguente database contiene tre record, ognuno dei quali fornisce informazioni su uno studente. Per il primo documento, firstname è una chiave e Franck è il suo valore.

Vantaggi dei database a documenti

  • Senza schema: non ci sono limitazioni in termini di formato e struttura dell’archiviazione dei dati. Questo è utile soprattutto quando nel database avvengono trasformazioni continue.
  • Facili da aggiornare: è possibile aggiungere o eliminare una nuova informazione senza modificare il resto dei campi esistenti di quello specifico documento.
  • Prestazioni migliorate: tutte le informazioni su un documento si trovano in quello stesso documento. Non c’è bisogno di riferirsi a informazioni esterne, cosa che potrebbe non valere per un database relazionale in cui l’utente potrebbe dover interrogare altre tabelle.

Limiti dei database a documenti

  • Problemi di verifica della coerenza: perché i documenti non devono necessariamente avere relazioni tra loro e due documenti possono avere campi diversi.
  • Problemi di atomicità: se dobbiamo modificare due collezioni di documenti, dovremo eseguire una query separata per ciascun documento.

Quando usare i database a documenti

  • Consigliati quando lo schema dei dati è soggetto a cambiamenti costanti in futuro.

Applicazioni dei database a documenti

  • Grazie alla loro flessibilità, i database a documenti sono pratici per i profili utente online, dove utenti diversi possono avere tipi di informazioni differenti. In questo caso, il profilo di ciascun utente è archiviato usando solo gli attributi a lui specifici.
  • Possono essere usati per il content management, che richiede un’archiviazione efficace di dati provenienti da una varietà di fonti. Quelle informazioni possono poi essere usate per creare e incorporare nuovi tipi di contenuti.

2. Database chiave-valore

Sono i tipi più semplici di database NoSQL. Ogni elemento è archiviato nel database in una coppia chiave-valore. Possiamo pensarli come una tabella con esattamente due colonne. La prima colonna contiene una chiave univoca. La seconda colonna è il valore per ciascuna chiave. I valori possono essere di tipi di dato diversi, come interi, stringhe e float, o tipi più complessi, come immagini e documenti.

Il seguente esempio illustra un database chiave-valore contenente informazioni sui clienti, dove la chiave è il loro numero di telefono e il valore è il loro acquisto mensile.

Esempio NoSQL database Chiave/Valore

Vantaggi dei database chiave-valore

  • Semplicità: la struttura chiave-valore è immediata. L’assenza di tipo di dato lo rende semplice da usare.
  • Velocità: il formato dati semplice rende le operazioni di lettura e scrittura più veloci.

Limiti dei database chiave-valore

  • Non possono eseguire alcun filtraggio sulla colonna del valore perché il valore restituito è tutta l’informazione archiviata nel campo valore.
  • È ottimizzato solo avendo una singola chiave e un valore. Archiviare più valori richiederebbe un parser.
  • Il valore viene aggiornato solo per intero, il che richiede di recuperare i dati completi, eseguire l’elaborazione necessaria su tali dati e infine salvare di nuovo tutto. Questo può creare problemi di prestazioni quando l’elaborazione richiede molto tempo.

Quando usare i database chiave-valore

  • Adatti per applicazioni basate su query semplici per chiave.
  • Usati per applicazioni semplici che devono archiviare temporaneamente oggetti semplici come una cache.
  • Possono essere usati anche quando è necessario l’accesso ai dati in tempo reale.

Applicazioni

  • Sono ideali per applicazioni semplici che devono archiviare temporaneamente oggetti semplici come una cache.

3. Database a colonne larghe

Come suggerisce il nome, i database orientati alle colonne vengono usati per archiviare i dati come una raccolta di colonne, dove ogni colonna è trattata separatamente, e la logica di implementazione si basa sul paper di Google BigTable. Sono usati principalmente per carichi analitici come business intelligence, gestione di data warehouse e customer relationship management.

Ad esempio, possiamo ottenere rapidamente l’età media dei clienti e il prezzo medio dei prodotti con la funzione di aggregazione AVG su ciascuna colonna.

Esempio NoSQL database a colonne larghe

4. Database a grafo/nodo

I database a grafo vengono usati per archiviare, mappare e cercare relazioni tra nodi tramite archi. Un nodo rappresenta un elemento di dato, detto anche oggetto o entità. Ogni nodo ha un arco in ingresso o in uscita. Un arco rappresenta la relazione tra due nodi. Tali archi contengono alcune proprietà corrispondenti ai nodi che collegano.

«Zoumana studia alla Texas Tech University. Gli piace correre al parco dentro l’Università»

Esempio NoSQL database Grafico/Nodo

Vantaggi dei database a grafo/nodo

  • Struttura agile e flessibile.
  • La relazione tra i nodi nel database è leggibile e esplicita per l’essere umano, quindi facile da capire.

Limiti dei database a grafo/nodo

  • Non esiste un linguaggio di query standardizzato perché ogni linguaggio dipende dalla piattaforma.
  • Per il motivo precedente è difficile trovare supporto online quando si affronta un problema.

Quando usare i database a grafo/nodo

  • Possono essere usati quando devi creare relazioni tra elementi di dati ed essere in grado di recuperare rapidamente tali relazioni.

Applicazioni

  • Possono essere usati per eseguire sofisticate rilevazioni di frodi nelle transazioni finanziarie in tempo reale.
  • Possono essere usati per il data mining dai social media. Ad esempio, LinkedIn usa un database a grafo per identificare quali utenti si seguono tra loro e la relazione tra quegli utenti e le loro competenze (ML Engineer).
  • Mappatura di reti può essere un’ottima soluzione per la rappresentazione come grafo, poiché tali reti mappano le relazioni tra l’hardware e i servizi che supportano.

I 7 migliori database NoSQL per la Data Science

Ora che hai una conoscenza migliore dei database NoSQL, diamo un’occhiata a un elenco di database NoSQL popolari per progetti di data science. Questa analisi è focalizzata solo su database NoSQL open source.

Database NoSQL più popolari

1. MongoDB

MongoDB è un database open source orientato ai documenti che archivia i dati in formato JSON. È il database più utilizzato ed è stato progettato per alta disponibilità e scalabilità, offrendo sharding automatico e replica integrata. Il nostro corso Introduzione a MongoDB tratta l’uso di MongoDB e Python. Aiuta ad acquisire le competenze per manipolare e analizzare dati dalla struttura flessibile con MongoDB. Uber, LaunchDarkl, Delivery Hero e 4300 aziende usano MongoDB nel loro stack tecnologico.

2. Cassandra 

Cassandra è anch’esso un database open source a colonne larghe. Può distribuire i tuoi dati su più macchine e ripartizionarli automaticamente quando aggiungi nuove macchine alla tua infrastruttura. Uber, Facebook, Netflix e altre 506 aziende lo usano nel loro stack tecnologico.

3. Elasticsearch

Simile a MongoDB, anche Elasticsearch è un database orientato ai documenti e open source. È uno strumento di ricerca e analisi leader mondiale, incentrato su scalabilità e velocità. Uber, Shopify, Udemy e circa altre 3760 aziende lo usano nel loro stack.

4. Neo4J

Neo4J è un database open source orientato ai grafi. È utilizzato principalmente per gestire dati in crescita con relazioni. Si dice che circa 220 aziende lo usino nel loro stack tecnologico.

5. HBase

Si tratta di un database distribuito e orientato alle colonne. Fornisce anche le stesse funzionalità di BigTable di Google sopra Apache Hadoop. A quanto riportato, 81 aziende usano HBase nel loro stack tecnologico.

6. CouchDB

CouchDB è anch’esso un database open source orientato ai documenti che raccoglie e archivia i dati in formato JSON. Circa 84 aziende lo usano nel loro stack tecnologico.

7. OrientDB

Anch’esso open source, OrientDB è un database multi-modello che supporta modelli a grafo, documento, chiave-valore e oggetti. A quanto riportato, solo 13 aziende lo usano nel loro stack tecnologico.

Conclusione

Questo blog ha coperto gli aspetti principali dei database NoSQL e come possono essere utili ai tuoi progetti di data science negli ambienti in rapida crescita di oggi. Hai a disposizione tutti gli strumenti tra cui scegliere per implementare il database giusto per il tuo caso d’uso. Se sei ancora indeciso se usarli o meno, ora è il momento per te e il tuo team di sfruttare la potenza di questi database. 

Per saperne di più, il nostro corso dedicato ai concetti NoSQL rafforzerà la tua conoscenza dei quattro principali database che abbiamo trattato in precedenza. 

Argomenti
Data Science

Approfondisci la Data Science

Corso

Comprendere la Data Science

2 ore
874.5K
Un'introduzione alla data science senza necessità di programmare.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

Mostra AltroMostra Altro