DynamoDB è a coerenza eventuale?

Per impostazione predefinita sì. Le letture DynamoDB sono a coerenza eventuale: una lettura subito dopo una scrittura può non riflettere quella scrittura, ma ripetendola poco dopo restituisce l'Item aggiornato. Puoi scegliere letture a coerenza forte su tabelle e LSI; gli indici secondari globali sono sempre a coerenza eventuale.

Coerenza eventuale (il default)

Una lettura a coerenza eventuale può non riflettere una scrittura appena completata. Ripeti la lettura un attimo dopo e restituisce il valore corrente. Questa modalità è il default, e viene fatturata a metà tariffa rispetto a una a coerenza forte.

Letture a coerenza forte

Imposta ConsistentRead: true per ottenere i dati più recenti confermati (una lettura a coerenza forte). È supportata sulla tabella base e sugli indici secondari locali (LSI) — ma non sugli indici secondari globali (GSI) né su DynamoDB Streams, che sono sempre a coerenza eventuale.

L'esclusione dei GSI è imposta dall'API, non lasciata al tuo buonsenso: una Query su un indice secondario globale con ConsistentRead: true fa fallire l'intera richiesta invece di degradarla in silenzio (il rifiuto esatto).

Quanto costa la scelta

"Metà prezzo" è la regola documentata; ecco a quanto ammonta. Prendi 1.000 letture al secondo di Item da 4 KB in us-east-1, e nient'altro:

CoerenzaUnità di lettura per letturaOn-demand / meseCon provisioning / mese
Coerenza eventuale0,5164,25 $47,45 $ (500 RCU)
Coerenza forte1328,50 $94,90 $ (1.000 RCU)

Gli input, così puoi verificarli: 2.628.000 secondi in un mese da 730 ore, $0.125 per milione di unità di richiesta di lettura, $0.00013 per RCU-ora. Un Item da 4 KB è un'unità di lettura, dimezzata per la coerenza eventuale.

Quindi $164 al mese è il prezzo fisso per non leggere mai un Item stantio su questo carico di lavoro. È poco per il saldo di un conto ed è uno spreco per la scheda di un prodotto, ed è per questo che il flag è per richiesta e non per tabella. Calcola i tuoi numeri nel calcolatore dei prezzi.

Perché funziona così

DynamoDB replica automaticamente i tuoi dati su tre zone di disponibilità. La coerenza eventuale permette di servire le letture senza aspettare ogni copia — più veloce ed economico; la coerenza forte restituisce i dati più aggiornati.

E in multi-regione (global table)?

La replica tra regioni ha la sua impostazione di coerenza. Le global table usano per default la coerenza eventuale multi-regione (MREC), dove le modifiche si replicano verso le altre regioni tipicamente entro un secondo o meno. Puoi invece creare una global table con coerenza forte multi-regione (MRSC): le scritture si replicano in modo sincrono su almeno un'altra regione, e le letture a coerenza forte su qualsiasi replica restituiscono sempre la versione più recente di un Item.

Approfondisci

Leggi coerenza in DynamoDB per tutti i compromessi. Scarica DynoTable per cambiare la coerenza di lettura sulle tue query.

Riferimenti

Ultima verifica 2026-07-13 rispetto alla documentazione ufficiale AWS collegata sopra; prezzi unitari ricontrollati il 2026-07-28.

Il rifiuto sui GSI è stato riprodotto il 2026-07-28 su DynamoDB Local 3.3.0 (amazon/dynamodb-local:latest) tramite @aws-sdk/client-dynamodb 3.1095.0, e la tabella dei costi è stata calcolata dagli stessi dati di prezzo che usa il calcolatore.

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.