Si può usare DynamoDB come cache?

Sì. I lookup chiave-valore rapidi di DynamoDB e il TTL ne fanno una solida cache durevole — per sessioni, token e risultati calcolati. Per letture sotto il millisecondo, abbinalo a DynamoDB Accelerator (DAX), una cache in memoria write-through completamente gestita che si mette davanti alla tabella e restituisce letture eventualmente coerenti in microsecondi senza alcun codice di invalidazione della cache.

DynamoDB come cache durevole

Poiché le letture avvengono per chiave e in millisecondi a una cifra, DynamoDB funziona bene come livello di cache persistente. Il TTL fa scadere le voci obsolete al posto tuo, quindi le sessioni in cache o i risultati precalcolati si ripuliscono da soli.

Aggiungere DAX per i microsecondi

DAX è una cache in memoria che si posiziona davanti a DynamoDB:

  • Read-through / write-through — gestisce popolamento e invalidazione al posto tuo.
  • Letture in microsecondi — fino a 10 volte meglio sulle letture eventualmente coerenti.
  • Compatibile con l'API — modifiche minime all'applicazione.

Quanto costa DAX prima di farti risparmiare

DAX è un acquisto di latenza. Messo in cifre, non inizia a far risparmiare finché non leggi moltissimo.

Un nodo dax.t3.small costa 0,04 $ l'ora in us-east-1, e AWS ne raccomanda almeno tre distribuiti tra zone di disponibilità in produzione, perché tre è il numero che rende un cluster tollerante ai guasti. Fanno 87,60 $ al mese. Una lettura on-demand eventualmente coerente di un Item fino a 4 KB costa 0,0000000625 $, quindi gli stessi 87,60 $ comprano 1,4 miliardi di letture direttamente dalla tabella, o 533 al secondo sostenute per tutto il mese.

Quel numero per giunta favorisce DAX: presuppone che ogni lettura vada a segno nella cache, mentre in pratica ogni miss fattura una lettura sulla tabella in aggiunta al cluster. Un cluster di sviluppo a nodo singolo costa 29,20 $ al mese, ovvero 178 letture al secondo, e AWS sconsiglia meno di tre nodi in produzione dato che un cluster da uno o due nodi può perdere del tutto i dati in cache.

Il TTL è gratuito, e non è puntuale

Far scadere una voce da solo costa un'unità di scrittura; un milione di chiamate a DeleteItem su Item fino a 1 KB costa 0,63 $. Il TTL fa lo stesso lavoro senza consumare throughput di scrittura, ed è l'argomento pratico a suo favore in una cache.

Il problema sono i tempi. AWS elimina gli Item scaduti tipicamente entro pochi giorni dalla scadenza, quindi lo storage continua a fatturare voci che la tua applicazione considera sparite, e il conto segue il ritardo di eliminazione e non il TTL che hai impostato. Metti in cache 1.000 Item al secondo da 1 KB con un TTL di un'ora e l'insieme vivo è 3,4 GB, 0,86 $ al mese; un ritardo di due giorni gli parcheggia accanto 165 GB di voci morte a 41,19 $ al mese. Gli Item scaduti continuano anche a comparire nei risultati di Query e Scan finché non vengono rimossi fisicamente, quindi filtra sull'attributo di scadenza in lettura invece di fidarti.

Quando va bene e quando no

Ottimo per carichi di lavoro con molte letture che tollerano la coerenza eventuale (DAX serve dati eventualmente coerenti). Se ti serve coerenza forte su ogni lettura, vai direttamente alla tabella. Anche i nodi DAX si replicano tra loro in modo eventuale, quindi due client che colpiscono lo stesso cluster possono leggere per un attimo valori diversi per la stessa chiave.

Approfondisci

Leggi TTL di DynamoDB e coerenza in DynamoDB. Scarica DynoTable per ispezionare le tue tabelle di cache.

Riferimenti

Ultima verifica 2026-07-13 rispetto alla documentazione ufficiale AWS collegata sopra.

Costi calcolati il 2026-07-28. La tariffa oraria per nodo DAX è stata letta dalla AWS Price List API (us-east-1, dax.t3.small, 0,040 $) e le tariffe di lettura, scrittura e storage vengono dallo stesso feed che sincronizza il nostro calcolatore dei prezzi; l'aritmetica qui sopra è nostra e ogni suo dato in ingresso è sulla pagina.

Lavora con DynamoDB senza la Console

Un client desktop veloce per DynamoDB che esegue il vero SQL che DynamoDB non può — JOINs, GROUP BY, aggregazioni — con modifica visuale e un agente AI sulle tue chiavi Bedrock.

Prova gratuita di 30 giorni, senza carta di credito — poi il piano Free senza limiti di tempo.