← Tutti gli episodi
Copertina di I database: dove vivono i dati
Stagione 7 · Episodio 009

I database: dove vivono i dati

24 agosto 2026 5:45
0:00 5:45

Ciao, e benvenuto nella nona puntata della settima stagione. Abbiamo costruito il frontend, siamo passati al backend, e abbiamo visto il ponte che li collega. Oggi scendiamo nell'ultimo strato, il più profondo, quello dove i dati vivono davvero e restano nel tempo: i database. Perché un'applicazione senza un posto dove conservare le informazioni è come una mente senza memoria: può ragionare, ma dimentica tutto appena si spegne.

Partiamo dal problema che i database risolvono, perché è fondamentale. Quando un programma è in esecuzione, tiene i suoi dati nella memoria di lavoro, che è veloce ma temporanea: appena il programma si ferma o il computer si spegne, quei dati svaniscono. Ma un'applicazione vera ha bisogno di ricordare le cose per sempre: gli utenti registrati, i loro messaggi, i loro ordini. Questi dati devono sopravvivere allo spegnimento, restare disponibili domani e tra un anno. Il database è il luogo che garantisce questa memoria permanente: è dove i dati si depositano e restano, al sicuro, nel tempo.

Cosa fa, quindi, un database? Fa quattro cose fondamentali, che sono il vocabolario di base di ogni gestione dei dati, ed è utile nominarle. Permette di inserire nuovi dati, cioè aggiungere informazioni. Permette di leggerli, cioè andare a cercare e recuperare ciò che serve. Permette di aggiornarli, cioè modificare informazioni esistenti. E permette di cancellarli. Creare, leggere, aggiornare, cancellare: queste quattro operazioni sono il cuore di quasi tutto ciò che fa un'applicazione con i suoi dati. Quando usi un qualunque servizio, dietro le quinte stai facendo, in continuazione, queste quattro cose.

Ora, esistono famiglie diverse di database, e vale la pena conoscere la distinzione principale, senza entrare nei tecnicismi. C'è un tipo classico e diffusissimo che organizza i dati in tabelle, come fogli di calcolo ordinati, fatti di righe e colonne. Ogni tabella riguarda una cosa, per esempio gli utenti, e ogni riga è un singolo utente, con le sue colonne per il nome, l'indirizzo di posta, e così via. Questi database, detti relazionali, sono potentissimi proprio perché permettono di collegare le tabelle tra loro: la tabella degli ordini può fare riferimento alla tabella degli utenti, dicendo quale utente ha fatto quale ordine. È un modo ordinato e rigoroso di strutturare le informazioni.

Accanto a questi, esiste un'altra grande famiglia, più recente e più libera nella struttura, pensata per casi in cui i dati non si incastrano bene in tabelle rigide, o quando servono flessibilità e scala particolari. Non entriamo nei dettagli; ti basta sapere che non esiste un solo tipo di database, ma una scelta, e che questa scelta dipende dalla natura dei dati e dal problema che stai risolvendo. Come per i linguaggi e per i cloud di cui abbiamo parlato, anche qui vale il principio: prima capisci bene i concetti di uno, il tipo classico a tabelle è un ottimo punto di partenza, e poi allargherai.

Come si parla con un database? Attraverso un linguaggio pensato apposta per interrogarlo. Con esso puoi dire cose come "dammi tutti gli utenti che si sono registrati questo mese", oppure "aggiorna l'indirizzo di questo utente". È un modo dichiarativo di chiedere: descrivi cosa vuoi, e il database si occupa di come trovarlo. Per i database classici a tabelle esiste un linguaggio standard, molto diffuso, che vale davvero la pena imparare, perché è uno di quei fondamenti che restano validi per decenni e attraverso tanti lavori diversi. È una delle competenze più durature che tu possa costruire.

Vediamo dove si colloca il database nell'architettura che abbiamo costruito, perché così tutto si incastra. Ricordi il backend, il cervello sul server? È lui che parla con il database. Il frontend non tocca mai direttamente il database, per sicurezza e per ordine: chiede al backend, e il backend, se serve, va a interrogare il database e restituisce i risultati. Il database sta dietro al backend, come un archivio protetto in una stanza interna, a cui solo il personale autorizzato, cioè il backend, ha accesso. Questa catena, frontend, backend, database, è l'ossatura di quasi ogni applicazione web.

Un tema di grande importanza pratica, che riprende la stagione sul cloud: i dati sono spesso la cosa più preziosa di un'applicazione. Un'applicazione la puoi riscrivere; i dati degli utenti, se li perdi, sono persi per sempre. Per questo attorno ai database ruotano preoccupazioni serie: le copie di sicurezza, per non perdere nulla in caso di guasto; la protezione, perché contengono spesso informazioni sensibili; l'integrità, perché i dati devono restare corretti e coerenti. Trattare i dati con cura e rispetto non è pignoleria: è una delle responsabilità più serie di chi costruisce applicazioni, perché dietro quei dati ci sono persone reali.

Un incoraggiamento pratico, che riprende tutta la stagione: anche i database si imparano facendo. Puoi installarne uno, o usarne uno semplice, creare qualche tabella, inserire dati, e provare a interrogarli. Vedere con i tuoi occhi i dati che inserisci, li ritrovi, li modifichi, li cancelli, rende concreti concetti che altrimenti restano astratti. E ti accorgerai che il linguaggio per interrogarli, all'inizio spaventoso, è in realtà sorprendentemente vicino al modo in cui esprimeresti la richiesta a parole. Comincia in piccolo, con poche tabelle e domande semplici, e costruisci da lì.

Per oggi ci fermiamo qui. I database sono lo strato dove i dati vivono in modo permanente, sopravvivendo allo spegnimento: permettono di creare, leggere, aggiornare e cancellare informazioni. Ne esistono famiglie diverse, con i classici a tabelle come ottimo punto di partenza, e si interrogano con linguaggi dedicati che vale la pena imparare. Stanno dietro al backend, che è l'unico a parlarci, e custodiscono ciò che spesso è la cosa più preziosa di tutte: i dati delle persone. Nella prossima e ultima puntata mettiamo insieme tutti i pezzi in un'unica immagine. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.