Un Azure Storage account è il contenitore fondamentale per i dati nel cloud Microsoft. Un singolo account espone quattro servizi distinti, pensati per tipologie di dato diverse: Blob, File, Table e Queue. Capire “quale usare quando” è uno degli obiettivi centrali del DP-900, perché ciascun servizio risponde a un pattern d’uso preciso e non intercambiabile.
I quattro servizi dello Storage account
Azure Blob Storage
Il Blob Storage (Binary Large Object) è il servizio per i dati non strutturati: immagini, video, backup, log, documenti, file di grandi dimensioni. È lo storage a oggetti per eccellenza, ottimizzato per volumi enormi di dati acceduti via HTTP/HTTPS.
I dati sono organizzati in container (simili a cartelle di primo livello) che contengono i singoli blob. Esistono tre tipi di blob:
- Block blob: file e oggetti generici (la scelta più comune).
- Append blob: ottimizzati per operazioni di sola aggiunta, tipici dei log.
- Page blob: usati come dischi virtuali (VHD) per le Azure Virtual Machine.
È la fondazione anche per scenari di data lake: con l’opzione hierarchical namespace (spazio dei nomi gerarchico) un account Blob diventa Azure Data Lake Storage Gen2, adatto ad analytics con Microsoft Fabric o Azure Databricks.
Azure Files
Azure Files offre condivisioni di file gestite accessibili tramite i protocolli standard SMB e NFS. La differenza chiave rispetto al Blob è che una share Files si può montare come unità di rete su Windows, Linux o macOS, esattamente come un file server tradizionale.
Casi d’uso tipici: sostituzione o estensione cloud di un file server on-premises, condivisione di file tra più VM, “lift and shift” di applicazioni legacy che si aspettano un percorso di rete. Con Azure File Sync una share può essere replicata e messa in cache su server locali.
Azure Table Storage
Azure Table Storage è un archivio NoSQL chiave-valore per dati semi-strutturati che non richiedono relazioni complesse né join. Ogni entità è identificata da PartitionKey + RowKey e può avere attributi eterogenei (schemaless).
Si usa per grandi quantità di dati con accesso rapido per chiave: cataloghi, metadati di dispositivi, dati di telemetria, profili utente. È economico e scalabile, ma non è adatto a query relazionali; per esigenze più avanzate si passa ad Azure Cosmos DB (che offre anche una Table API compatibile).
Azure Queue Storage
Azure Queue Storage è un servizio di messaggistica asincrona che disaccoppia i componenti di un’applicazione. Un produttore inserisce messaggi in coda; un consumatore li preleva ed elabora in un secondo momento. Questo permette di gestire picchi di carico e di costruire architetture resilienti.
Serve a bilanciare il lavoro tra worker e a rendere i sistemi tolleranti ai guasti. Per scenari enterprise più ricchi (ordinamento FIFO, topic/subscription) si sceglie invece Azure Service Bus.
I tier di accesso del Blob Storage
Il Blob Storage consente di ottimizzare i costi scegliendo un access tier in base alla frequenza di accesso:
- Hot: dati acceduti frequentemente. Costo di storage più alto, costo di accesso più basso.
- Cool: dati poco acceduti, conservati almeno circa 30 giorni (backup, dati recenti ma “freddi”).
- Cold: dati raramente acceduti, conservati almeno circa 90 giorni; più economico del cool nello storage.
- Archive: dati praticamente mai acceduti (archiviazione a lungo termine, compliance). Costo di storage minimo, ma il dato è offline: per leggerlo serve un processo di rehydration che richiede ore.
Con le lifecycle management policy i blob possono passare automaticamente da hot a cool, cold e archive con l’invecchiare del dato.
Trappole tipiche d’esame
- Devi condividere file tra più VM montando un’unità di rete via SMB? → Azure Files (non Blob: il Blob non si monta come drive SMB).
- Devi archiviare milioni di immagini o video non strutturati? → Azure Blob Storage (non Table, che è chiave-valore).
- Devi disaccoppiare due componenti applicativi con elaborazione asincrona semplice? → Azure Queue Storage (per feature avanzate FIFO/topic → Service Bus).
- Dati che quasi mai leggerai ma devi conservare anni per compliance al minor costo? → tier Archive (accettando ore di rehydration prima di poterli leggere).
- Store NoSQL chiave-valore economico e schemaless senza join? → Azure Table Storage (se servono query ricche o distribuzione globale → Cosmos DB).