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à.
Versioni delle tabelle globali DynamoDB
Sono disponibili due versioni delle tabelle globali DynamoDB: Tabelle globali versione 2019.11.21 (Corrente) e Tabelle globali versione 2017.11.29 (Legacy). Si consiglia di utilizzare la versione 2019.11.21 (Corrente) poiché è più facile da usare, è supportata in più Regioni e ha un costo inferiore per la maggior parte dei carichi di lavoro rispetto alla versione 2017.11.29 (Legacy).
Determinare la versione di una tabella globale
Determinazione della versione utilizzando il AWS CLI
Identificazione di una replica di una tabella globale versione 2019.11.21 (Corrente)
Per determinare se una tabella è una replica delle tabelle globali versione 2019.11.21 (Corrente), invoca il comando describe-table per la tabella. Se l’output contiene l’attributo GlobalTableVersioncon il valore “2019.11.21”, allora la tabella è una replica della tabella globale versione 2019.11.21 (Corrente).
Un comando CLI di esempio per describe-table:
aws dynamodb describe-table \ --table-name users \ --region us-east-2
L’output (abbreviato) contiene l’attributo GlobalTableVersion con il valore “2019.11.21”, quindi questa tabella è una replica della tabella globale versione 2019.11.21 (Corrente).
{ "Table": { "AttributeDefinitions": [ { "AttributeName": "id", "AttributeType": "S" }, { "AttributeName": "name", "AttributeType": "S" } ], "TableName": "users", ... "GlobalTableVersion": "2019.11.21", "Replicas": [ { "RegionName": "us-west-2", "ReplicaStatus": "ACTIVE", } ], ... } }
Identificazione di una replica di una tabella globale versione 2017.11.29 (Corrente)
La versione 2017.11.29 (Legacy) utilizza un set di comandi dedicato per la gestione delle tabelle globali. Per determinare se una tabella è una replica delle tabelle globali 2017.11.29 (Legacy), invoca il comando describe-global-table per la tabella. Se si riceve una risposta positiva, la tabella è una replica di tabella globale versione 2017.11.29 (Legacy). Se il comando describe-global-table restituisce un errore GlobalTableNotFoundException, la tabella non è una replica della versione 2017.11.29 (Legacy).
Un comando CLI di esempio per describe-global-table:
aws dynamodb describe-global-table \ --table-name users \ --region us-east-2
Il comando restituisce una risposta positiva, pertanto la tabella è una replica di tabella globale versione 2017.11.29 (Legacy).
{ "GlobalTableDescription": { "ReplicationGroup": [ { "RegionName": "us-west-2" }, { "RegionName": "us-east-2" } ], "GlobalTableArn": "arn:aws:dynamodb::123456789012:global-table/users", "CreationDateTime": "2025-06-10T13:55:53.630000-04:00", "GlobalTableStatus": "ACTIVE", "GlobalTableName": "users" } }
Determinare la versione utilizzando la console DynamoDB
Per identificare la versione di una replica di una tabella globale, procedi come segue:
-
Apri la console DynamoDB a casa. https://console.aws.amazon.com/dynamodb/
-
Nel riquadro di navigazione sul lato sinistro della console scegli Tables (Tabelle).
-
Seleziona la tabella per la quale desideri identificare la versione delle tabelle globali.
-
Scegliere la scheda Global Tables (Tabelle globali).
La sezione Riepilogo mostra la versione delle tabelle globali in uso.
Differenze di comportamento tra le versioni Legacy e Corrente
L’elenco seguente descrive le differenze di comportamento tra le versioni Legacy e Corrente delle tabelle globali.
-
La versione 2019.11.21 (Corrente) utilizza meno capacità di scrittura per diverse operazioni DynamoDB rispetto alla versione 2017.11.29 (Legacy) e pertanto è più conveniente per la maggior parte dei clienti. Le differenze per queste operazioni DynamoDB sono le seguenti:
-
PutItemPer richiamare un elemento da 1 KB in una regione e replicarlo in altre regioni sono necessarie 2 r WRUs per regione per la versione 2017.11.29 (versione precedente), ma solo 1 RWRu per la versione 2019.11.21 (versione corrente).
-
L'invocazione UpdateItemdi un elemento da 1 KB richiede 2 r WRUs nella regione di origine e 1 RWRu per regione di destinazione per 2017.11.29 (Legacy), ma solo 1 RWRu per entrambe le regioni di origine e di destinazione per la versione 2019.11.21 (corrente).
-
L'invocazione DeleteItemdi un elemento da 1 KB richiede 1 RWRu nella regione di origine e 2 r WRUs per regione di destinazione per il 2017.11.29 (Legacy), ma solo 1 RWRu sia per la regione di origine che per la regione di destinazione per la versione 2019.11.21 (corrente).
La tabella seguente mostra l’utilizzo di rWRU delle tabelle 2017.11.29 (Legacy) e 2019.11.21 (Corrente) per un elemento da 1 KB in due Regioni.
Operazioni 2017.11.29 (Legacy) 2019.11.21 (Corrente) Risparmi PutItem 4 r WRUs 2 r WRUs 50% UpdateItem 3 r WRUs 2 r WRUs 33% DeleteItem 3 r WRUs 2 r WRUs 33% -
-
la versione 2017.11.29 (Legacy) è disponibile solo in 11. Regioni AWS Tuttavia, la versione 2019.11.21 (Corrente) è disponibile in tutte le Regioni AWS.
-
È possibile creare tabelle globali nella versione 2017.11.29 (Legacy) creando prima un set di tabelle regionali vuote, quindi richiamando l'API per formare la CreateGlobalTabletabella globale. Puoi creare tabelle globali nella versione 2019.11.21 (Current) richiamando l'UpdateTableAPI per aggiungere una replica a una tabella regionale esistente.
-
La versione 2017.11.29 (Legacy) richiede di svuotare tutte le repliche nella tabella prima di aggiungere una replica in una nuova Regione (anche durante la creazione). La versione 2019.11.21 (Corrente) supporta l’aggiunta e la rimozione di repliche nelle Regioni su una tabella che contiene già dati.
-
la versione 2017.11.29 (Legacy) utilizza il seguente set di piani di controllo dedicato per la gestione delle repliche: APIs
la versione 2019.11.21 (Current) utilizza and per gestire le repliche. DescribeTableUpdateTable APIs
-
La versione 2017.11.29 (Legacy) pubblica due record dei flussi DynamoDB per ogni scrittura. La versione 2019.11.21 (Corrente) pubblica solo un record dei flussi DynamoDB per ogni scrittura.
-
La versione 2017.11.29 (Legacy) compila e aggiorna gli attributi
aws:rep:deleting,aws:rep:updateregioneaws:rep:updatetime. La versione 2019.11.21 (Corrente) non compila né aggiorna questi attributi. -
La versione 2017.11.29 (Legacy) non sincronizza le impostazioni Utilizzo del Time to Live in DynamoDB tra le repliche. La versione 2019.11.21 (Corrente) sincronizza le impostazioni del TTL tra le repliche.
-
La versione 2017.11.29 (Legacy) non replica le eliminazioni TTL su altre repliche. La versione 2019.11.21 (Corrente) replica le eliminazioni TTL su tutte le repliche.
-
La versione 2017.11.29 (Legacy) non sincronizza le impostazioni di dimensionamento automatico tra le repliche. La versione 2019.11.21 (Corrente) sincronizza le impostazioni di dimensionamento automatico tra le repliche.
-
La versione 2017.11.29 (Legacy) non sincronizza le impostazioni degli indici secondari globali (GSI) tra le repliche. La versione 2019.11.21 (Corrente) sincronizza le impostazioni degli indici secondari globali tra le repliche.
-
La versione 2017.11.29 (Legacy) non sincronizza le impostazioni di crittografia dei dati a riposo tra le repliche. La versione 2019.11.21 (Corrente) sincronizza le impostazioni di crittografia dei dati a riposo tra le repliche.
-
La versione 2017.11.29 (Legacy) pubblica la metrica
PendingReplicationCount. La versione 2019.11.21 (Corrente) non pubblica questa metrica.
Aggiornamento alla versione corrente
Autorizzazioni richieste per l’aggiornamento delle tabelle globali
Per eseguire l’aggiornamento alla versione 2019.11.21 (Corrente), è necessario disporre delle autorizzazioni dynamodb:UpdateGlobalTableversion in tutte le Regioni con repliche. Queste autorizzazioni richieste si aggiungono alle autorizzazioni necessarie per accedere alla console DynamoDB e visualizzare le tabelle.
La seguente policy IAM concede le autorizzazioni per aggiornare qualsiasi tabella globale alla versione 2019.11.21 (Corrente).
{ "version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dynamodb:UpdateGlobalTableversion", "Resource": "*" } ] }
La seguente policy IAM concede le autorizzazioni per aggiornare solo la tabella globale Music, con repliche in due Regioni, alla versione 2019.11.21 (Corrente).
{ "version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dynamodb:UpdateGlobalTableversion", "Resource": [ "arn:aws:dynamodb::123456789012:global-table/Music", "arn:aws:dynamodb:ap-southeast-1:123456789012:table/Music", "arn:aws:dynamodb:us-east-2:123456789012:table/Music" ] } ] }
Cosa aspettarsi durante l’aggiornamento
-
Tutte le repliche di tabelle globali continueranno a elaborare il traffico di lettura e scrittura durante l’aggiornamento.
-
Il processo di aggiornamento richiede da pochi minuti a diverse ore a seconda delle dimensioni della tabella e del numero di repliche.
-
Durante il processo di aggiornamento, il valore di TableStatuscambierà da a.
ACTIVEUPDATINGÈ possibile visualizzare lo stato della tabella richiamando l'DescribeTableAPI o con la vista Tabelle nella console DynamoDB. -
Il dimensionamento automatico non modificherà le impostazioni di capacità allocata per una tabella globale durante l’aggiornamento della tabella. Si consiglia vivamente di impostare la tabella sulla modalità con capacità on demand durante l’aggiornamento.
-
Se si sceglie di utilizzare la modalità con capacità allocata con il dimensionamento automatico durante l’aggiornamento, è necessario aumentare il throughput minimo di lettura e scrittura nelle policy per soddisfare eventuali aumenti previsti di traffico per evitare la limitazione (della larghezza di banda della rete) durante l’aggiornamento.
-
La metrica
ReplicationLatencypuò segnalare temporaneamente i picchi di latenza o interrompere la segnalazione dei dati delle metriche durante il processo di aggiornamento. Per ulteriori informazioni, consulta ReplicationLatency. -
Al termine del processo di aggiornamento, lo stato della tabella torna su
ACTIVE.
Comportamento dei flussi DynamoDB prima, durante e dopo l’aggiornamento
| Operazioni | Regione di replica | Comportamento prima dell’aggiornamento | Comportamento durante l’aggiornamento | Comportamento dopo l’aggiornamento |
|---|---|---|---|---|
Put o Update |
Origine |
La compilazione dei timestamp avviene utilizzando. UpdateItem | La popolazione del timestamp avviene utilizzando. PutItem | Non viene generato alcun timestamp visibile al cliente. |
Vengono generati due record di flussi. Il primo record contiene gli attributi scritti dal cliente. Il secondo record contiene gli attributi aws:rep:*. |
Vengono generati due record di flussi. Il primo record contiene gli attributi scritti dal cliente. Il secondo record contiene gli attributi aws:rep:*. |
Viene generato un singolo record di flussi contenente gli attributi scritti dal cliente. | ||
| WCUs Vengono consumate due r per ogni scrittura del cliente. | WCUs Vengono consumate due r per ogni scrittura da parte del cliente. | Viene utilizzata una rWCU per ogni scrittura da parte del cliente. | ||
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in CloudWatch. |
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in. CloudWatch |
ReplicationLatencyla metrica è pubblicata in. CloudWatch |
||
Destinazione |
La replica avviene utilizzando. PutItem | La replica avviene utilizzando. PutItem | La replica avviene utilizzando. PutItem | |
Viene generato un singolo record dei flussi, che contiene sia gli attributi scritti dal cliente che gli attributi aws:rep:*. |
Viene generato un singolo record dei flussi, che contiene sia gli attributi scritti dal cliente che gli attributi aws:rep:*. |
Viene generato un singolo record dei flussi, che contiene solo gli attributi scritti dal cliente e nessun attributo di replica. | ||
| Viene utilizzata una rWCU se l’elemento esiste nella Regione di destinazione. Due r WCUs vengono consumate se l'articolo non esiste nella regione di destinazione. | Viene utilizzata una rWCU se l’elemento esiste nella Regione di destinazione. Due r WCUs vengono consumati se l'articolo non esiste nella regione di destinazione. | Viene utilizzata una rWCU per ogni scrittura da parte del cliente. | ||
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in CloudWatch. |
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in. CloudWatch |
ReplicationLatencyla metrica è pubblicata in. CloudWatch |
||
Elimina |
Origine |
Elimina qualsiasi elemento con un timestamp più piccolo utilizzando. DeleteItem | Elimina qualsiasi elemento con un timestamp più piccolo utilizzando. DeleteItem | Elimina qualsiasi elemento con un timestamp più piccolo utilizzando. DeleteItem |
Viene generato un singolo record dei flussi, che contiene sia gli attributi scritti dal cliente che gli attributi aws:rep:*. |
Viene generato un singolo record dei flussi, che contiene sia gli attributi scritti dal cliente che gli attributi aws:rep:*. |
Viene generato un singolo record dei flussi, che contiene gli attributi scritti dal cliente. | ||
| Viene utilizzata una rWCU per ogni eliminazione da parte del cliente. | Viene utilizzata una rWCU per ogni eliminazione da parte del cliente. | Viene utilizzata una rWCU per ogni eliminazione da parte del cliente. | ||
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in. CloudWatch |
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in. CloudWatch |
ReplicationLatencyla metrica è pubblicata in. CloudWatch |
||
Destinazione |
Le eliminazioni in due fasi avvengono secondo la seguente procedura:
|
Elimina l'elemento utilizzando. DeleteItem | Elimina l'elemento utilizzando. DeleteItem | |
Vengono generati due record di flussi. Il primo record contiene la modifica al campo aws:rep:deleting. Il secondo record contiene gli attributi scritti dal cliente e gli attributi aws:rep:*. |
Viene generato un singolo record dei flussi, che contiene gli attributi scritti dal cliente. | Viene generato un singolo record dei flussi, che contiene gli attributi scritti dal cliente. | ||
| WCUs Vengono consumate due r per ogni eliminazione da parte del cliente. | Viene utilizzata una rWCU per ogni eliminazione da parte del cliente. | Viene utilizzata una rWCU per ogni eliminazione da parte del cliente. | ||
ReplicationLatencye le PendingReplicationCount metriche sono pubblicate in CloudWatch. |
ReplicationLatencyla metrica è pubblicata in. CloudWatch |
ReplicationLatencyla metrica è pubblicata in. CloudWatch |
Aggiornamento alla versione 2019.11.21 (Corrente)
Attieniti alla seguente procedura per aggiornare la versione delle tabelle globali DynamoDB utilizzando la Console di gestione AWS.
Come eseguire l’aggiornamento delle tabelle globali alla versione 2019.11.21 (Corrente)
-
Apri la console DynamoDB a casa. https://console.aws.amazon.com/dynamodb/
-
Nel pannello di navigazione sul lato sinistro della console, seleziona Tabelle e quindi seleziona la tabella globale che desideri aggiornare alla versione 2019.11.21 (Corrente).
-
Scegliere la scheda Global Tables (Tabelle globali).
-
Scegli Aggiorna versione.
-
Leggi e accetta i nuovi requisiti, quindi scegli Update version (Aggiorna versione).
-
Al termine del processo di aggiornamento, la versione delle tabelle globali visualizzata sulla console cambia in 2019.11.21.