Calcolatore della dimensione degli Item DynamoDB
Incolla un Item DynamoDB come JSON per vedere la sua dimensione esatta in byte e le unità di capacità di lettura e scrittura che consuma — poi condividi il risultato con un link.
Stima secondo le regole di dimensionamento AWS. Ti serve anche il costo? Calcolatore dei prezzi
Perché la dimensione dell'Item è importante
In DynamoDB non paghi per riga — paghi per la capacità che ogni operazione consuma, e quella capacità è funzione della dimensione dell'Item. La lettura di un Item fino a 4 KB costa un'unità di lettura; una scrittura fino a 1 KB costa un'unità di scrittura. Supera un limite di un solo byte e l'operazione viene arrotondata all'unità successiva, così un Item che passa da 4 KB a 4,1 KB raddoppia il suo costo di lettura.
La dimensione dell'Item limita anche ciò che DynamoDB può archiviare: un singolo Item, inclusi tutti i nomi e i valori degli attributi, deve restare sotto i 400 KB. I blob di grandi dimensioni vanno in S3 con un puntatore nell'Item. Conoscere la dimensione in byte prima di progettare i tuoi pattern di accesso ti aiuta a mantenere piccoli gli Item più richiesti, a raggruppare in modo efficiente e a evitare il throttling improvviso.
Questo calcolatore applica le regole di dimensionamento documentate da AWS al JSON semplice: lunghezza in byte UTF-8 per nomi e stringhe, codifica per cifre significative per i numeri e l'overhead per elemento per liste e mappe annidate. La griglia di capacità mostra poi le unità per ogni modalità di coerenza in lettura e per le scritture standard rispetto a quelle transazionali.
Ogni byte è un valore di attributo — Tipi di dati DynamoDB spiega come ogni tipo è codificato e dimensionato.
Domande frequenti
Come calcola DynamoDB la dimensione di un Item?
La dimensione di un Item è la somma, per ogni attributo, della lunghezza in byte UTF-8 del nome dell'attributo più la dimensione del suo valore. Le stringhe contano i loro byte UTF-8, i numeri sono codificati per cifre significative, i booleani e i null occupano 1 byte e le liste e le mappe aggiungono 3 byte di overhead più 1 byte per elemento. Questo calcolatore applica queste regole esatte al JSON che incolli.
Come si ricavano le unità di capacità dalla dimensione dell'Item?
Un'unità di capacità di lettura copre una lettura a coerenza forte di un Item fino a 4 KB; le letture a coerenza eventuale costano mezza unità e le letture transazionali ne costano due. Un'unità di capacità di scrittura copre una scrittura fino a 1 KB e le scritture transazionali ne costano due. La dimensione dell'Item viene sempre arrotondata per eccesso al limite successivo di 4 KB (letture) o 1 KB (scritture), con un minimo di un'unità.
Qual è la dimensione massima di un Item DynamoDB?
Un singolo Item DynamoDB — l'Item più tutti i nomi e i valori dei suoi attributi — non può superare i 400 KB. Se il tuo Item è più grande, suddividilo su più Item o archivia gli attributi grandi in Amazon S3 mantenendo un riferimento nell'Item. Il calcolatore segnala gli Item che superano il limite.
Perché non posso inserire valori Set o binari?
Il JSON semplice non ha modo di esprimere un String Set, Number Set, Binary Set o un valore binario DynamoDB — un array JSON corrisponde sempre a una List (L) e un oggetto JSON a una Map (M). Per dimensionare questi tipi, modellali manualmente in base alla loro lunghezza in byte, oppure usa il convertitore DynamoDB JSON per vedere la forma attributo-valore.