Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Le tabelle DynamoDB non hanno uno schema, tranne per la chiave primaria, pertanto gli elementi in una tabella possono avere attributi, dimensioni e tipi di dati diversi.
La dimensione totale di un elemento è data dalla somma delle lunghezze dei nomi e dei valori dei relativi attributi, più eventuali overhead applicabili come descritto di seguito. Per stimare le dimensioni degli attributi, puoi utilizzare le linee guida seguenti:
-
Le stringhe sono Unicode con codifica binaria UTF-8. La dimensione di una stringa è (numero di byte con codifica UTF-8 del nome dell'attributo) + (numero di byte con codifica UTF-8).
-
I numeri hanno lunghezza variabile, con un massimo di 38 cifre significative. Gli zero iniziali e finali vengono tagliati. La dimensione di un numero è approssimativamente (numero di byte del nome dell'attributo con codifica UTF-8) + (1 byte per due cifre significative) + (1 byte).
-
Un valore binario deve essere codificato in formato base64 per essere inviato a DynamoDB, ma per il calcolo della dimensione viene utilizzata la lunghezza dei byte in formato RAW del valore. La dimensione di un attributo binario è (numero di byte del nome dell'attributo con codifica UTF-8) + (numero di byte non elaborati).
-
La dimensione di un attributo nullo o di un attributo booleano è (numero di byte del nome dell'attributo con codifica UTF-8) + (1 byte).
-
Un attributo di tipo
List
oMap
richiede 3 byte di overhead, indipendentemente dal contenuto. La dimensione di unList
orMap
è (numero di byte del nome dell'attributo con codifica UTF-8) + sum (dimensione degli elementi annidati) + (3 byte). La dimensione di unList
or vuotoMap
è (numero di byte del nome dell'attributo con codifica UTF-8) + (3 byte). -
Ogni elemento
List
oMap
richiede anche un byte di sovraccarico.
Nota
È consigliabile preferire nomi di attributo brevi piuttosto che lunghi. Ciò consente di ridurre la quantità di spazio di archiviazione richiesta, ma può anche ridurre la quantità di RCU/ utilizzata. WCUs
Ai fini della fatturazione dell'archiviazione, ogni elemento include un overhead di archiviazione per elemento che dipende dalle funzionalità abilitate.
-
Tutti gli elementi in DynamoDB richiedono 100 byte di overhead di archiviazione per l'indicizzazione.
-
Alcune funzionalità DynamoDB (tabelle globali, transazioni, acquisizione dei dati di modifica per Kinesis Data Streams con DynamoDB) richiedono un overhead di archiviazione aggiuntivo per tenere conto degli attributi creati dal sistema derivanti dall'abilitazione di tali funzionalità. Ad esempio, le tabelle globali richiedono un overhead aggiuntivo di 48 byte di archiviazione.