Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.
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à.
Esempi di utilizzo di DynamoDB AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con DynamoDB.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Mentre le azioni mostrano come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel loro contesto negli scenari correlati.
Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come utilizzarebatch-get-item
.
- AWS CLI
-
Per recuperare più elementi da una tabella
L'
batch-get-items
esempio seguente legge più elementi dallaMusicCollection
tabella utilizzando un batch di treGetItem
richieste e richiede il numero di unità di capacità di lettura utilizzate dall'operazione. Il comando restituisce solo l'AlbumTitle
attributo.aws dynamodb batch-get-item \ --request-items
file://request-items.json
\ --return-consumed-capacityTOTAL
Contenuto di
request-items.json
.{ "MusicCollection": { "Keys": [ { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"} }, { "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }, { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Scared of My Shadow"} } ], "ProjectionExpression":"AlbumTitle" } }
Output:
{ "Responses": { "MusicCollection": [ { "AlbumTitle": { "S": "Somewhat Famous" } }, { "AlbumTitle": { "S": "Blue Sky Blues" } }, { "AlbumTitle": { "S": "Louder Than Ever" } } ] }, "UnprocessedKeys": {}, "ConsumedCapacity": [ { "TableName": "MusicCollection", "CapacityUnits": 1.5 } ] }
Per ulteriori informazioni, consulta Batch Operations nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command BatchGetItem
Reference.
-
Il seguente esempio di codice mostra come utilizzarebatch-write-item
.
- AWS CLI
-
Per aggiungere più elementi a una tabella
L'
batch-write-item
esempio seguente aggiunge tre nuovi elementi allaMusicCollection
tabella utilizzando un batch di trePutItem
richieste. Richiede inoltre informazioni sul numero di unità di capacità di scrittura utilizzate dall'operazione e sulle eventuali raccolte di elementi modificate dall'operazione.aws dynamodb batch-write-item \ --request-items
file://request-items.json
\ --return-consumed-capacityINDEXES
\ --return-item-collection-metricsSIZE
Contenuto di
request-items.json
.{ "MusicCollection": [ { "PutRequest": { "Item": { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"}, "AlbumTitle": {"S": "Somewhat Famous"} } } }, { "PutRequest": { "Item": { "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"}, "AlbumTitle": {"S": "Songs About Life"} } } }, { "PutRequest": { "Item": { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Scared of My Shadow"}, "AlbumTitle": {"S": "Blue Sky Blues"} } } } ] }
Output:
{ "UnprocessedItems": {}, "ItemCollectionMetrics": { "MusicCollection": [ { "ItemCollectionKey": { "Artist": { "S": "No One You Know" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] }, { "ItemCollectionKey": { "Artist": { "S": "Acme Band" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] } ] }, "ConsumedCapacity": [ { "TableName": "MusicCollection", "CapacityUnits": 6.0, "Table": { "CapacityUnits": 3.0 }, "LocalSecondaryIndexes": { "AlbumTitleIndex": { "CapacityUnits": 3.0 } } } ] }
Per ulteriori informazioni, consulta Batch Operations nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command BatchWriteItem
Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-backup
.
- AWS CLI
-
Per creare un backup per una tabella DynamoDB esistente
L'
create-backup
esempio seguente crea un backup dellaMusicCollection
tabella.aws dynamodb create-backup \ --table-name
MusicCollection
\ --backup-nameMusicCollectionBackup
Output:
{ "BackupDetails": { "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3a", "BackupName": "MusicCollectionBackup", "BackupSizeBytes": 0, "BackupStatus": "CREATING", "BackupType": "USER", "BackupCreationDateTime": 1576616366.715 } }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. CreateBackup
AWS CLI
-
Il seguente esempio di codice mostra come utilizzarecreate-global-table
.
- AWS CLI
-
Per creare una tabella globale
L'
create-global-table
esempio seguente crea una tabella globale da due tabelle identiche nelle AWS regioni separate specificate.aws dynamodb create-global-table \ --global-table-name
MusicCollection
\ --replication-groupRegionName=us-east-2
RegionName=us-east-1
\ --regionus-east-2
Output:
{ "GlobalTableDescription": { "ReplicationGroup": [ { "RegionName": "us-east-2" }, { "RegionName": "us-east-1" } ], "GlobalTableArn": "arn:aws:dynamodb::123456789012:global-table/MusicCollection", "CreationDateTime": 1576625818.532, "GlobalTableStatus": "CREATING", "GlobalTableName": "MusicCollection" } }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta CreateGlobalTable
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzarecreate-table
.
- AWS CLI
-
Esempio 1: creare una tabella con tag
L'
create-table
esempio seguente utilizza gli attributi e lo schema chiave specificati per creare una tabella denominataMusicCollection
. Questa tabella utilizza la velocità effettiva assegnata ed è crittografata a riposo utilizzando la velocità di trasmissione predefinita AWS . CMK Il comando applica anche un tag alla tabella, con una chiave diOwner
e un valore di.blueTeam
aws dynamodb create-table \ --table-name
MusicCollection
\ --attribute-definitionsAttributeName=Artist,AttributeType=S
AttributeName=SongTitle,AttributeType=S
\ --key-schemaAttributeName=Artist,KeyType=HASH
AttributeName=SongTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=5,WriteCapacityUnits=5
\ --tagsKey=Owner,Value=blueTeam
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "WriteCapacityUnits": 5, "ReadCapacityUnits": 5 }, "TableSizeBytes": 0, "TableName": "MusicCollection", "TableStatus": "CREATING", "KeySchema": [ { "KeyType": "HASH", "AttributeName": "Artist" }, { "KeyType": "RANGE", "AttributeName": "SongTitle" } ], "ItemCount": 0, "CreationDateTime": "2020-05-26T16:04:41.627000-07:00", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 2: creare una tabella in modalità On-Demand
L'esempio seguente crea una tabella chiamata
MusicCollection
utilizzando la modalità on-demand, anziché la modalità throughput assegnata. Questa funzionalità è utile per le tabelle con carichi di lavoro imprevedibili.aws dynamodb create-table \ --table-name
MusicCollection
\ --attribute-definitionsAttributeName=Artist,AttributeType=S
AttributeName=SongTitle,AttributeType=S
\ --key-schemaAttributeName=Artist,KeyType=HASH
AttributeName=SongTitle,KeyType=RANGE
\ --billing-modePAY_PER_REQUEST
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2020-05-27T11:44:10.807000-07:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 0, "WriteCapacityUnits": 0 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "BillingModeSummary": { "BillingMode": "PAY_PER_REQUEST" } } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 3: creare una tabella e crittografarla con un Customer Managed CMK
L'esempio seguente crea una tabella denominata
MusicCollection
e la crittografa utilizzando una tabella gestita dal cliente. CMKaws dynamodb create-table \ --table-name
MusicCollection
\ --attribute-definitionsAttributeName=Artist,AttributeType=S
AttributeName=SongTitle,AttributeType=S
\ --key-schemaAttributeName=Artist,KeyType=HASH
AttributeName=SongTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=5,WriteCapacityUnits=5
\ --sse-specificationEnabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2020-05-27T11:12:16.431000-07:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "SSEDescription": { "Status": "ENABLED", "SSEType": "KMS", "KMSMasterKeyArn": "arn:aws:kms:us-west-2:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234" } } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 4: creare una tabella con un indice secondario locale
L'esempio seguente utilizza gli attributi e lo schema chiave specificati per creare una tabella denominata
MusicCollection
con un indice secondario locale denominatoAlbumTitleIndex
.aws dynamodb create-table \ --table-name
MusicCollection
\ --attribute-definitionsAttributeName=Artist,AttributeType=S
AttributeName=SongTitle,AttributeType=S
AttributeName=AlbumTitle,AttributeType=S
\ --key-schemaAttributeName=Artist,KeyType=HASH
AttributeName=SongTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --local-secondary-indexes \ "[ { \"IndexName\": \"AlbumTitleIndex\", \"KeySchema\": [ {\"AttributeName\": \"Artist\",\"KeyType\":\"HASH\"}, {\"AttributeName\": \"AlbumTitle\",\"KeyType\":\"RANGE\"} ], \"Projection\": { \"ProjectionType\": \"INCLUDE\", \"NonKeyAttributes\": [\"Genre\", \"Year\"] } } ]"Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "AlbumTitle", "AttributeType": "S" }, { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2020-05-26T15:59:49.473000-07:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "LocalSecondaryIndexes": [ { "IndexName": "AlbumTitleIndex", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "AlbumTitle", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "INCLUDE", "NonKeyAttributes": [ "Genre", "Year" ] }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/index/AlbumTitleIndex" } ] } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 5: creare una tabella con un indice secondario globale
L'esempio seguente crea una tabella denominata
GameScores
con un indice secondario globale chiamatoGameTitleIndex
. La tabella base ha una chiave di partizioneUserId
e una chiave di ordinamento diGameTitle
, che consentono di trovare il punteggio migliore di un singolo utente per un gioco specifico in modo efficiente, mentre GSI ha una chiave di partizioneGameTitle
e una chiave di ordinamento diTopScore
, che consentono di trovare rapidamente il punteggio complessivo più alto per un determinato gioco.aws dynamodb create-table \ --table-name
GameScores
\ --attribute-definitionsAttributeName=UserId,AttributeType=S
AttributeName=GameTitle,AttributeType=S
AttributeName=TopScore,AttributeType=N
\ --key-schemaAttributeName=UserId,KeyType=HASH
\AttributeName=GameTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --global-secondary-indexes \ "[ { \"IndexName\": \"GameTitleIndex\", \"KeySchema\": [ {\"AttributeName\":\"GameTitle\",\"KeyType\":\"HASH\"}, {\"AttributeName\":\"TopScore\",\"KeyType\":\"RANGE\"} ], \"Projection\": { \"ProjectionType\":\"INCLUDE\", \"NonKeyAttributes\":[\"UserId\"] }, \"ProvisionedThroughput\": { \"ReadCapacityUnits\": 10, \"WriteCapacityUnits\": 5 } } ]"Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "GameTitle", "AttributeType": "S" }, { "AttributeName": "TopScore", "AttributeType": "N" }, { "AttributeName": "UserId", "AttributeType": "S" } ], "TableName": "GameScores", "KeySchema": [ { "AttributeName": "UserId", "KeyType": "HASH" }, { "AttributeName": "GameTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2020-05-26T17:28:15.602000-07:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "GlobalSecondaryIndexes": [ { "IndexName": "GameTitleIndex", "KeySchema": [ { "AttributeName": "GameTitle", "KeyType": "HASH" }, { "AttributeName": "TopScore", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "INCLUDE", "NonKeyAttributes": [ "UserId" ] }, "IndexStatus": "CREATING", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores/index/GameTitleIndex" } ] } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 6: creare una tabella con più indici secondari globali contemporaneamente
L'esempio seguente crea una tabella denominata
GameScores
con due indici secondari globali. Gli GSI schemi vengono passati tramite un file, anziché sulla riga di comando.aws dynamodb create-table \ --table-name
GameScores
\ --attribute-definitionsAttributeName=UserId,AttributeType=S
AttributeName=GameTitle,AttributeType=S
AttributeName=TopScore,AttributeType=N
AttributeName=Date,AttributeType=S
\ --key-schemaAttributeName=UserId,KeyType=HASH
AttributeName=GameTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --global-secondary-indexesfile://gsi.json
Contenuto di
gsi.json
.[ { "IndexName": "GameTitleIndex", "KeySchema": [ { "AttributeName": "GameTitle", "KeyType": "HASH" }, { "AttributeName": "TopScore", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "ALL" }, "ProvisionedThroughput": { "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 } }, { "IndexName": "GameDateIndex", "KeySchema": [ { "AttributeName": "GameTitle", "KeyType": "HASH" }, { "AttributeName": "Date", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "ALL" }, "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 } } ]
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "Date", "AttributeType": "S" }, { "AttributeName": "GameTitle", "AttributeType": "S" }, { "AttributeName": "TopScore", "AttributeType": "N" }, { "AttributeName": "UserId", "AttributeType": "S" } ], "TableName": "GameScores", "KeySchema": [ { "AttributeName": "UserId", "KeyType": "HASH" }, { "AttributeName": "GameTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2020-08-04T16:40:55.524000-07:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "GlobalSecondaryIndexes": [ { "IndexName": "GameTitleIndex", "KeySchema": [ { "AttributeName": "GameTitle", "KeyType": "HASH" }, { "AttributeName": "TopScore", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "ALL" }, "IndexStatus": "CREATING", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores/index/GameTitleIndex" }, { "IndexName": "GameDateIndex", "KeySchema": [ { "AttributeName": "GameTitle", "KeyType": "HASH" }, { "AttributeName": "Date", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "ALL" }, "IndexStatus": "CREATING", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores/index/GameDateIndex" } ] } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 7: creare una tabella con Streams abilitato
L'esempio seguente crea una tabella chiamata
GameScores
con DynamoDB Streams abilitato. Sia le immagini nuove che quelle vecchie di ogni elemento verranno scritte nello stream.aws dynamodb create-table \ --table-name
GameScores
\ --attribute-definitionsAttributeName=UserId,AttributeType=S
AttributeName=GameTitle,AttributeType=S
\ --key-schemaAttributeName=UserId,KeyType=HASH
AttributeName=GameTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --stream-specificationStreamEnabled=TRUE,StreamViewType=NEW_AND_OLD_IMAGES
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "GameTitle", "AttributeType": "S" }, { "AttributeName": "UserId", "AttributeType": "S" } ], "TableName": "GameScores", "KeySchema": [ { "AttributeName": "UserId", "KeyType": "HASH" }, { "AttributeName": "GameTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2020-05-27T10:49:34.056000-07:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "StreamSpecification": { "StreamEnabled": true, "StreamViewType": "NEW_AND_OLD_IMAGES" }, "LatestStreamLabel": "2020-05-27T17:49:34.056", "LatestStreamArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores/stream/2020-05-27T17:49:34.056" } }
Per ulteriori informazioni, consulta Basic Operations for Tables nella Amazon DynamoDB Developer Guide.
Esempio 8: creare una tabella con Keys-Only Stream abilitato
L'esempio seguente crea una tabella chiamata
GameScores
con DynamoDB Streams abilitato. Nel flusso vengono scritti solo gli attributi chiave degli elementi modificati.aws dynamodb create-table \ --table-name
GameScores
\ --attribute-definitionsAttributeName=UserId,AttributeType=S
AttributeName=GameTitle,AttributeType=S
\ --key-schemaAttributeName=UserId,KeyType=HASH
AttributeName=GameTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --stream-specificationStreamEnabled=TRUE,StreamViewType=KEYS_ONLY
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "GameTitle", "AttributeType": "S" }, { "AttributeName": "UserId", "AttributeType": "S" } ], "TableName": "GameScores", "KeySchema": [ { "AttributeName": "UserId", "KeyType": "HASH" }, { "AttributeName": "GameTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2023-05-25T18:45:34.140000+00:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "StreamSpecification": { "StreamEnabled": true, "StreamViewType": "KEYS_ONLY" }, "LatestStreamLabel": "2023-05-25T18:45:34.140", "LatestStreamArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores/stream/2023-05-25T18:45:34.140", "DeletionProtectionEnabled": false } }
Per ulteriori informazioni, consulta Change data capture for DynamoDB Streams nella Amazon DynamoDB Developer Guide.
Esempio 9: creare una tabella con la classe Standard Infrequent Access
L'esempio seguente crea una tabella chiamata
GameScores
e assegna la classe di tabella Standard-Infrequent Access (DynamoDB Standard-IA). Questa classe di tabelle è ottimizzata perché lo storage è il costo principale.aws dynamodb create-table \ --table-name
GameScores
\ --attribute-definitionsAttributeName=UserId,AttributeType=S
AttributeName=GameTitle,AttributeType=S
\ --key-schemaAttributeName=UserId,KeyType=HASH
AttributeName=GameTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --table-classSTANDARD_INFREQUENT_ACCESS
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "GameTitle", "AttributeType": "S" }, { "AttributeName": "UserId", "AttributeType": "S" } ], "TableName": "GameScores", "KeySchema": [ { "AttributeName": "UserId", "KeyType": "HASH" }, { "AttributeName": "GameTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2023-05-25T18:33:07.581000+00:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableClassSummary": { "TableClass": "STANDARD_INFREQUENT_ACCESS" }, "DeletionProtectionEnabled": false } }
Per ulteriori informazioni, consulta Table classes nella Amazon DynamoDB Developer Guide.
Esempio 10: creare una tabella con la protezione da eliminazione abilitata
L'esempio seguente crea una tabella denominata
GameScores
e abilita la protezione da eliminazione.aws dynamodb create-table \ --table-name
GameScores
\ --attribute-definitionsAttributeName=UserId,AttributeType=S
AttributeName=GameTitle,AttributeType=S
\ --key-schemaAttributeName=UserId,KeyType=HASH
AttributeName=GameTitle,KeyType=RANGE
\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5
\ --deletion-protection-enabledOutput:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "GameTitle", "AttributeType": "S" }, { "AttributeName": "UserId", "AttributeType": "S" } ], "TableName": "GameScores", "KeySchema": [ { "AttributeName": "UserId", "KeyType": "HASH" }, { "AttributeName": "GameTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": "2023-05-25T23:02:17.093000+00:00", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "DeletionProtectionEnabled": true } }
Per ulteriori informazioni, consulta Using Delection Protection nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command CreateTable
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-backup
.
- AWS CLI
-
Per eliminare un backup DynamoDB esistente
L'
delete-backup
esempio seguente elimina il backup esistente specificato.aws dynamodb delete-backup \ --backup-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3a
Output:
{ "BackupDescription": { "BackupDetails": { "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3a", "BackupName": "MusicCollectionBackup", "BackupSizeBytes": 0, "BackupStatus": "DELETED", "BackupType": "USER", "BackupCreationDateTime": 1576616366.715 }, "SourceTableDetails": { "TableName": "MusicCollection", "TableId": "b0c04bcc-309b-4352-b2ae-9088af169fe2", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableSizeBytes": 0, "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableCreationDateTime": 1576615228.571, "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 }, "ItemCount": 0, "BillingMode": "PROVISIONED" }, "SourceTableFeatureDetails": {} } }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. DeleteBackup
AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredelete-item
.
- AWS CLI
-
Esempio 1: Per eliminare un elemento
L'
delete-item
esempio seguente elimina un elemento dallaMusicCollection
tabella e richiede i dettagli sull'elemento che è stato eliminato e sulla capacità utilizzata dalla richiesta.aws dynamodb delete-item \ --table-name
MusicCollection
\ --keyfile://key.json
\ --return-valuesALL_OLD
\ --return-consumed-capacityTOTAL
\ --return-item-collection-metricsSIZE
Contenuto di
key.json
.{ "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Scared of My Shadow"} }
Output:
{ "Attributes": { "AlbumTitle": { "S": "Blue Sky Blues" }, "Artist": { "S": "No One You Know" }, "SongTitle": { "S": "Scared of My Shadow" } }, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 2.0 }, "ItemCollectionMetrics": { "ItemCollectionKey": { "Artist": { "S": "No One You Know" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] } }
Per ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
Esempio 2: eliminare un elemento in modo condizionale
L'esempio seguente elimina un articolo dalla
ProductCatalog
tabella solo seProductCategory
è unoSporting Goods
o l'altroGardening Supplies
e il suo prezzo è compreso tra 500 e 600. Restituisce i dettagli sull'elemento che è stato eliminato.aws dynamodb delete-item \ --table-name
ProductCatalog
\ --key '{"Id":{"N":"456"}}
' \ --condition-expression"(ProductCategory IN (:cat1, :cat2)) and (#P between :lo and :hi)"
\ --expression-attribute-namesfile://names.json
\ --expression-attribute-valuesfile://values.json
\ --return-valuesALL_OLD
Contenuto di
names.json
.{ "#P": "Price" }
Contenuto di
values.json
.{ ":cat1": {"S": "Sporting Goods"}, ":cat2": {"S": "Gardening Supplies"}, ":lo": {"N": "500"}, ":hi": {"N": "600"} }
Output:
{ "Attributes": { "Id": { "N": "456" }, "Price": { "N": "550" }, "ProductCategory": { "S": "Sporting Goods" } } }
Per ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command DeleteItem
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-table
.
- AWS CLI
-
Per eliminare una tabella
L'
delete-table
esempio seguente elimina laMusicCollection
tabella.aws dynamodb delete-table \ --table-name
MusicCollection
Output:
{ "TableDescription": { "TableStatus": "DELETING", "TableSizeBytes": 0, "ItemCount": 0, "TableName": "MusicCollection", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "WriteCapacityUnits": 5, "ReadCapacityUnits": 5 } } }
Per ulteriori informazioni, consulta Eliminazione di una tabella nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta Command DeleteTable
Reference AWS CLI .
-
Il seguente esempio di codice mostra come utilizzaredescribe-backup
.
- AWS CLI
-
Per ottenere informazioni su un backup esistente di una tabella
L'
describe-backup
esempio seguente visualizza informazioni sul backup esistente specificato.aws dynamodb describe-backup \ --backup-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3a
Output:
{ "BackupDescription": { "BackupDetails": { "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3a", "BackupName": "MusicCollectionBackup", "BackupSizeBytes": 0, "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupCreationDateTime": 1576616366.715 }, "SourceTableDetails": { "TableName": "MusicCollection", "TableId": "b0c04bcc-309b-4352-b2ae-9088af169fe2", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableSizeBytes": 0, "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableCreationDateTime": 1576615228.571, "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 }, "ItemCount": 0, "BillingMode": "PROVISIONED" }, "SourceTableFeatureDetails": {} } }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. DescribeBackup
AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-continuous-backups
.
- AWS CLI
-
Per ottenere informazioni sui backup continui per una tabella DynamoDB
L'
describe-continuous-backups
esempio seguente mostra i dettagli sulle impostazioni di backup continuo per la tabella.MusicCollection
aws dynamodb describe-continuous-backups \ --table-name
MusicCollection
Output:
{ "ContinuousBackupsDescription": { "ContinuousBackupsStatus": "ENABLED", "PointInTimeRecoveryDescription": { "PointInTimeRecoveryStatus": "DISABLED" } } }
Per ulteriori informazioni, consulta Point-in-Time Recovery for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta DescribeContinuousBackups
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-contributor-insights
.
- AWS CLI
-
Per visualizzare le impostazioni di Contributor Insights per una tabella DynamoDB
L'
describe-contributor-insights
esempio seguente visualizza le impostazioni di Contributor Insights per laMusicCollection
tabella e l'AlbumTitle-index
indice secondario globale.aws dynamodb describe-contributor-insights \ --table-name
MusicCollection
\ --index-nameAlbumTitle-index
Output:
{ "TableName": "MusicCollection", "IndexName": "AlbumTitle-index", "ContributorInsightsRuleList": [ "DynamoDBContributorInsights-PKC-MusicCollection-1576629651520", "DynamoDBContributorInsights-SKC-MusicCollection-1576629651520", "DynamoDBContributorInsights-PKT-MusicCollection-1576629651520", "DynamoDBContributorInsights-SKT-MusicCollection-1576629651520" ], "ContributorInsightsStatus": "ENABLED", "LastUpdateDateTime": 1576629654.78 }
Per ulteriori informazioni, consulta Analyzing Data Access Using CloudWatch Contributor Insights for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. DescribeContributorInsights
AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-endpoints
.
- AWS CLI
-
Per visualizzare le informazioni sugli endpoint regionali
L'
describe-endpoints
esempio seguente mostra i dettagli sugli endpoint per la regione corrente AWS .aws dynamodb describe-endpoints
Output:
{ "Endpoints": [ { "Address": "dynamodb.us-west-2.amazonaws.com", "CachePeriodInMinutes": 1440 } ] }
Per ulteriori informazioni, consulta Amazon DynamoDB Endpoints and Quotas nella Guida generale.AWS
-
Per i API dettagli, consulta DescribeEndpoints
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-global-table-settings
.
- AWS CLI
-
Per ottenere informazioni sulle impostazioni di una tabella globale DynamoDB
L'
describe-global-table-settings
esempio seguente mostra le impostazioni per la tabellaMusicCollection
globale.aws dynamodb describe-global-table-settings \ --global-table-name
MusicCollection
Output:
{ "GlobalTableName": "MusicCollection", "ReplicaSettings": [ { "RegionName": "us-east-1", "ReplicaStatus": "ACTIVE", "ReplicaProvisionedReadCapacityUnits": 10, "ReplicaProvisionedReadCapacityAutoScalingSettings": { "AutoScalingDisabled": true }, "ReplicaProvisionedWriteCapacityUnits": 5, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "AutoScalingDisabled": true } }, { "RegionName": "us-east-2", "ReplicaStatus": "ACTIVE", "ReplicaProvisionedReadCapacityUnits": 10, "ReplicaProvisionedReadCapacityAutoScalingSettings": { "AutoScalingDisabled": true }, "ReplicaProvisionedWriteCapacityUnits": 5, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "AutoScalingDisabled": true } } ] }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta DescribeGlobalTableSettings
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-global-table
.
- AWS CLI
-
Per visualizzare informazioni su una tabella globale DynamoDB
L'
describe-global-table
esempio seguente mostra i dettagli sulla tabellaMusicCollection
globale.aws dynamodb describe-global-table \ --global-table-name
MusicCollection
Output:
{ "GlobalTableDescription": { "ReplicationGroup": [ { "RegionName": "us-east-2" }, { "RegionName": "us-east-1" } ], "GlobalTableArn": "arn:aws:dynamodb::123456789012:global-table/MusicCollection", "CreationDateTime": 1576625818.532, "GlobalTableStatus": "ACTIVE", "GlobalTableName": "MusicCollection" } }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta DescribeGlobalTable
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-limits
.
- AWS CLI
-
Per visualizzare i limiti di capacità assegnati
L'
describe-limits
esempio seguente mostra i limiti di capacità prevista per il tuo account nella regione corrente. AWSaws dynamodb describe-limits
Output:
{ "AccountMaxReadCapacityUnits": 80000, "AccountMaxWriteCapacityUnits": 80000, "TableMaxReadCapacityUnits": 40000, "TableMaxWriteCapacityUnits": 40000 }
Per ulteriori informazioni, consulta Limits in DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta DescribeLimits
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-table-replica-auto-scaling
.
- AWS CLI
-
Per visualizzare le impostazioni di ridimensionamento automatico tra le repliche di una tabella globale
L'
describe-table-replica-auto-scaling
esempio seguente visualizza le impostazioni di ridimensionamento automatico tra le repliche della tabellaMusicCollection
globale.aws dynamodb describe-table-replica-auto-scaling \ --table-name
MusicCollection
Output:
{ "TableAutoScalingDescription": { "TableName": "MusicCollection", "TableStatus": "ACTIVE", "Replicas": [ { "RegionName": "us-east-1", "GlobalSecondaryIndexes": [], "ReplicaProvisionedReadCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBReadCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBWriteCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaStatus": "ACTIVE" }, { "RegionName": "us-east-2", "GlobalSecondaryIndexes": [], "ReplicaProvisionedReadCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBReadCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBWriteCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaStatus": "ACTIVE" } ] } }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta DescribeTableReplicaAutoScaling
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-table
.
- AWS CLI
-
Per descrivere una tabella
L'
describe-table
esempio seguente descrive laMusicCollection
tabella.aws dynamodb describe-table \ --table-name
MusicCollection
Output:
{ "Table": { "AttributeDefinitions": [ { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "WriteCapacityUnits": 5, "ReadCapacityUnits": 5 }, "TableSizeBytes": 0, "TableName": "MusicCollection", "TableStatus": "ACTIVE", "KeySchema": [ { "KeyType": "HASH", "AttributeName": "Artist" }, { "KeyType": "RANGE", "AttributeName": "SongTitle" } ], "ItemCount": 0, "CreationDateTime": 1421866952.062 } }
Per ulteriori informazioni, consulta Describing a Table nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta Command DescribeTable
Reference AWS CLI .
-
Il seguente esempio di codice mostra come utilizzaredescribe-time-to-live
.
- AWS CLI
-
Per visualizzare le impostazioni Time to Live per una tabella
L'
describe-time-to-live
esempio seguente visualizza le impostazioni Time to Live per laMusicCollection
tabella.aws dynamodb describe-time-to-live \ --table-name
MusicCollection
Output:
{ "TimeToLiveDescription": { "TimeToLiveStatus": "ENABLED", "AttributeName": "ttl" } }
Per ulteriori informazioni, consulta Time to Live nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command DescribeTimeToLive
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-item
.
- AWS CLI
-
Esempio 1: leggere un elemento in una tabella
L'
get-item
esempio seguente recupera un elemento dallaMusicCollection
tabella. La tabella ha una chiave hash-and-range primaria (Artist
eSongTitle
), quindi è necessario specificare entrambi questi attributi. Il comando richiede anche informazioni sulla capacità di lettura consumata dall'operazione.aws dynamodb get-item \ --table-name
MusicCollection
\ --keyfile://key.json
\ --return-consumed-capacityTOTAL
Contenuto di
key.json
.{ "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }
Output:
{ "Item": { "AlbumTitle": { "S": "Songs About Life" }, "SongTitle": { "S": "Happy Day" }, "Artist": { "S": "Acme Band" } }, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 0.5 } }
Per ulteriori informazioni, consulta Reading an Item nella Amazon DynamoDB Developer Guide.
Esempio 2: leggere un elemento utilizzando una lettura coerente
L'esempio seguente recupera un elemento dalla
MusicCollection
tabella utilizzando letture fortemente coerenti.aws dynamodb get-item \ --table-name
MusicCollection
\ --keyfile://key.json
\ --consistent-read \ --return-consumed-capacityTOTAL
Contenuto di
key.json
.{ "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }
Output:
{ "Item": { "AlbumTitle": { "S": "Songs About Life" }, "SongTitle": { "S": "Happy Day" }, "Artist": { "S": "Acme Band" } }, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 1.0 } }
Per ulteriori informazioni, consulta Reading an Item nella Amazon DynamoDB Developer Guide.
Esempio 3: recuperare attributi specifici di un articolo
L'esempio seguente utilizza un'espressione di proiezione per recuperare solo tre attributi dell'elemento desiderato.
aws dynamodb get-item \ --table-name
ProductCatalog
\ --key '{"Id": {"N": "102"}}
' \ --projection-expression"#T, #C, #P"
\ --expression-attribute-namesfile://names.json
Contenuto di
names.json
.{ "#T": "Title", "#C": "ProductCategory", "#P": "Price" }
Output:
{ "Item": { "Price": { "N": "20" }, "Title": { "S": "Book 102 Title" }, "ProductCategory": { "S": "Book" } } }
Per ulteriori informazioni, consulta Reading an Item nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command GetItem
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-backups
.
- AWS CLI
-
Esempio 1: Per elencare tutti i backup DynamoDB esistenti
L'
list-backups
esempio seguente elenca tutti i backup esistenti.aws dynamodb list-backups
Output:
{ "BackupSummaries": [ { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-a1bcd234", "BackupName": "MusicCollectionBackup1", "BackupCreationDateTime": "2020-02-12T14:41:51.617000-08:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 170 }, { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-b2abc345", "BackupName": "MusicCollectionBackup2", "BackupCreationDateTime": "2020-06-26T11:08:35.431000-07:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 400 } ] }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 2: per elencare i backup creati dall'utente in un intervallo di tempo specifico
L'esempio seguente elenca solo i backup della
MusicCollection
tabella creati dall'utente (non quelli creati automaticamente da DynamoDB) con una data di creazione compresa tra il 1° gennaio 2020 e il 1° marzo 2020.aws dynamodb list-backups \ --table-name
MusicCollection
\ --time-range-lower-bound1577836800
\ --time-range-upper-bound1583020800
\ --backup-typeUSER
Output:
{ "BackupSummaries": [ { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-a1bcd234", "BackupName": "MusicCollectionBackup1", "BackupCreationDateTime": "2020-02-12T14:41:51.617000-08:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 170 } ] }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 3: limitare le dimensioni della pagina
L'esempio seguente restituisce un elenco di tutti i backup esistenti, ma recupera solo un elemento in ogni chiamata, eseguendo più chiamate se necessario per ottenere l'intero elenco. La limitazione delle dimensioni della pagina è utile quando si eseguono comandi di elenco su un numero elevato di risorse, il che può causare un errore di «timeout» quando si utilizza la dimensione di pagina predefinita di 1000.
aws dynamodb list-backups \ --page-size
1
Output:
{ "BackupSummaries": [ { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-a1bcd234", "BackupName": "MusicCollectionBackup1", "BackupCreationDateTime": "2020-02-12T14:41:51.617000-08:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 170 }, { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-b2abc345", "BackupName": "MusicCollectionBackup2", "BackupCreationDateTime": "2020-06-26T11:08:35.431000-07:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 400 } ] }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 4: limitare il numero di articoli restituiti
L'esempio seguente limita il numero di articoli restituiti a 1. La risposta include un
NextToken
valore con cui recuperare la pagina successiva di risultati.aws dynamodb list-backups \ --max-items
1
Output:
{ "BackupSummaries": [ { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-a1bcd234", "BackupName": "MusicCollectionBackup1", "BackupCreationDateTime": "2020-02-12T14:41:51.617000-08:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 170 } ], "NextToken": "abCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9" }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 5: per recuperare la pagina successiva dei risultati
Il comando seguente utilizza il
NextToken
valore di una precedente chiamata allist-backups
comando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextToken
valore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-backups \ --starting-token
abCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9
Output
{ "BackupSummaries": [ { "TableName": "MusicCollection", "TableId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "BackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01234567890123-b2abc345", "BackupName": "MusicCollectionBackup2", "BackupCreationDateTime": "2020-06-26T11:08:35.431000-07:00", "BackupStatus": "AVAILABLE", "BackupType": "USER", "BackupSizeBytes": 400 } ] }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. ListBackups
AWS CLI
-
Il seguente esempio di codice mostra come utilizzarelist-contributor-insights
.
- AWS CLI
-
Esempio 1: per visualizzare un elenco di riepiloghi di Contributor Insights
L'
list-contributor-insights
esempio seguente visualizza un elenco di riepiloghi di Contributor Insights.aws dynamodb list-contributor-insights
Output:
{ "ContributorInsightsSummaries": [ { "TableName": "MusicCollection", "IndexName": "AlbumTitle-index", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "ProductCatalog", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "Forum", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "Reply", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "Thread", "ContributorInsightsStatus": "ENABLED" } ] }
Per ulteriori informazioni, consulta Analyzing Data Access Using CloudWatch Contributor Insights for DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 2: limitare il numero di articoli restituiti
L'esempio seguente limita il numero di articoli restituiti a 4. La risposta include un
NextToken
valore con cui recuperare la pagina successiva di risultati.aws dynamodb list-contributor-insights \ --max-results
4
Output:
{ "ContributorInsightsSummaries": [ { "TableName": "MusicCollection", "IndexName": "AlbumTitle-index", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "ProductCatalog", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "Forum", "ContributorInsightsStatus": "ENABLED" } ], "NextToken": "abCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9" }
Per ulteriori informazioni, consulta Analyzing Data Access Using CloudWatch Contributor Insights for DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 3: per recuperare la pagina successiva dei risultati
Il comando seguente utilizza il
NextToken
valore di una precedente chiamata allist-contributor-insights
comando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextToken
valore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-contributor-insights \ --max-results
4
\ --next-tokenabCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9
Output:
{ "ContributorInsightsSummaries": [ { "TableName": "Reply", "ContributorInsightsStatus": "ENABLED" }, { "TableName": "Thread", "ContributorInsightsStatus": "ENABLED" } ] }
Per ulteriori informazioni, consulta Analyzing Data Access Using CloudWatch Contributor Insights for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. ListContributorInsights
AWS CLI
-
Il seguente esempio di codice mostra come utilizzarelist-global-tables
.
- AWS CLI
-
Per elencare le tabelle globali DynamoDB esistenti
L'
list-global-tables
esempio seguente elenca tutte le tabelle globali esistenti.aws dynamodb list-global-tables
Output:
{ "GlobalTables": [ { "GlobalTableName": "MusicCollection", "ReplicationGroup": [ { "RegionName": "us-east-2" }, { "RegionName": "us-east-1" } ] } ] }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta ListGlobalTables
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzarelist-tables
.
- AWS CLI
-
Esempio 1: Per elencare le tabelle
L'
list-tables
esempio seguente elenca tutte le tabelle associate all' AWS account corrente e alla regione.aws dynamodb list-tables
Output:
{ "TableNames": [ "Forum", "ProductCatalog", "Reply", "Thread" ] }
Per ulteriori informazioni, consulta Listing Table Names nella Amazon DynamoDB Developer Guide.
Esempio 2: limitare le dimensioni della pagina
L'esempio seguente restituisce un elenco di tutte le tabelle esistenti, ma recupera solo un elemento in ogni chiamata, eseguendo più chiamate se necessario per ottenere l'intero elenco. La limitazione delle dimensioni della pagina è utile quando si eseguono comandi di elenco su un numero elevato di risorse, il che può causare un errore di «timeout» quando si utilizza la dimensione di pagina predefinita di 1000.
aws dynamodb list-tables \ --page-size
1
Output:
{ "TableNames": [ "Forum", "ProductCatalog", "Reply", "Thread" ] }
Per ulteriori informazioni, consulta Listing Table Names nella Amazon DynamoDB Developer Guide.
Esempio 3: limitare il numero di articoli restituiti
L'esempio seguente limita il numero di articoli restituiti a 2. La risposta include un
NextToken
valore con cui recuperare la pagina successiva di risultati.aws dynamodb list-tables \ --max-items
2
Output:
{ "TableNames": [ "Forum", "ProductCatalog" ], "NextToken": "abCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9" }
Per ulteriori informazioni, consulta Listing Table Names nella Amazon DynamoDB Developer Guide.
Esempio 4: per recuperare la pagina successiva dei risultati
Il comando seguente utilizza il
NextToken
valore di una precedente chiamata allist-tables
comando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextToken
valore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-tables \ --starting-token
abCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9
Output:
{ "TableNames": [ "Reply", "Thread" ] }
Per ulteriori informazioni, consulta Listing Table Names nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command ListTables
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-tags-of-resource
.
- AWS CLI
-
Esempio 1: elencare i tag di una risorsa DynamoDB
L'
list-tags-of-resource
esempio seguente visualizza i tag per laMusicCollection
tabella.aws dynamodb list-tags-of-resource \ --resource-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection
Output:
{ "Tags": [ { "Key": "Owner", "Value": "blueTeam" }, { "Key": "Environment", "Value": "Production" } ] }
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 2: limitare il numero di tag restituiti
L'esempio seguente limita il numero di tag restituiti a 1. La risposta include un
NextToken
valore con cui recuperare la pagina successiva di risultati.aws dynamodb list-tags-of-resource \ --resource-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection
\ --max-items1
Output:
{ "Tags": [ { "Key": "Owner", "Value": "blueTeam" } ], "NextToken": "abCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9" }
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 3: per recuperare la pagina successiva dei risultati
Il comando seguente utilizza il
NextToken
valore di una precedente chiamata allist-tags-of-resource
comando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextToken
valore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-tags-of-resource \ --resource-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection
\ --starting-tokenabCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9
Output:
{ "Tags": [ { "Key": "Environment", "Value": "Production" } ] }
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. ListTagsOfResource
AWS CLI
-
Il seguente esempio di codice mostra come utilizzareput-item
.
- AWS CLI
-
Esempio 1: aggiungere un elemento a una tabella
L'
put-item
esempio seguente aggiunge un nuovo elemento alla MusicCollectiontabella.aws dynamodb put-item \ --table-name
MusicCollection
\ --itemfile://item.json
\ --return-consumed-capacityTOTAL
\ --return-item-collection-metricsSIZE
Contenuto di
item.json
.{ "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"}, "AlbumTitle": {"S": "Greatest Hits"} }
Output:
{ "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 1.0 }, "ItemCollectionMetrics": { "ItemCollectionKey": { "Artist": { "S": "No One You Know" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] } }
Per ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
Esempio 2: sovrascrivere in modo condizionale un elemento in una tabella
L'
put-item
esempio seguente sovrascrive un elemento esistente nellaMusicCollection
tabella solo se tale elemento esistente ha unAlbumTitle
attributo con un valore di.Greatest Hits
Il comando restituisce il valore precedente dell'elemento.aws dynamodb put-item \ --table-name
MusicCollection
\ --itemfile://item.json
\ --condition-expression"#A = :A"
\ --expression-attribute-namesfile://names.json
\ --expression-attribute-valuesfile://values.json
\ --return-valuesALL_OLD
Contenuto di
item.json
.{ "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"}, "AlbumTitle": {"S": "Somewhat Famous"} }
Contenuto di
names.json
.{ "#A": "AlbumTitle" }
Contenuto di
values.json
.{ ":A": {"S": "Greatest Hits"} }
Output:
{ "Attributes": { "AlbumTitle": { "S": "Greatest Hits" }, "Artist": { "S": "No One You Know" }, "SongTitle": { "S": "Call Me Today" } } }
Se la chiave esiste già, dovresti vedere il seguente risultato:
A client error (ConditionalCheckFailedException) occurred when calling the PutItem operation: The conditional request failed.
Per ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command PutItem
Reference.
-
Il seguente esempio di codice mostra come utilizzarequery
.
- AWS CLI
-
Esempio 1: interrogare una tabella
L'
query
esempio seguente interroga gli elementi dellaMusicCollection
tabella. La tabella ha una chiave hash-and-range primaria (Artist
eSongTitle
), ma questa query specifica solo il valore della chiave hash. Restituisce i titoli delle canzoni dell'artista chiamato «No One You Know».aws dynamodb query \ --table-name
MusicCollection
\ --projection-expression"SongTitle"
\ --key-condition-expression"Artist = :v1"
\ --expression-attribute-valuesfile://expression-attributes.json
\ --return-consumed-capacityTOTAL
Contenuto di
expression-attributes.json
.{ ":v1": {"S": "No One You Know"} }
Output:
{ "Items": [ { "SongTitle": { "S": "Call Me Today" }, "SongTitle": { "S": "Scared of My Shadow" } } ], "Count": 2, "ScannedCount": 2, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 0.5 } }
Per ulteriori informazioni, consulta Working with Queries in DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 2: interrogare una tabella utilizzando letture fortemente coerenti e attraversare l'indice in ordine decrescente
L'esempio seguente esegue la stessa query del primo esempio, ma restituisce i risultati in ordine inverso e utilizza letture fortemente coerenti.
aws dynamodb query \ --table-name
MusicCollection
\ --projection-expression"SongTitle"
\ --key-condition-expression"Artist = :v1"
\ --expression-attribute-valuesfile://expression-attributes.json
\ --consistent-read \ --no-scan-index-forward \ --return-consumed-capacityTOTAL
Contenuto di
expression-attributes.json
.{ ":v1": {"S": "No One You Know"} }
Output:
{ "Items": [ { "SongTitle": { "S": "Scared of My Shadow" } }, { "SongTitle": { "S": "Call Me Today" } } ], "Count": 2, "ScannedCount": 2, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 1.0 } }
Per ulteriori informazioni, consulta Working with Queries in DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 3: per filtrare risultati specifici
L'esempio seguente interroga
MusicCollection
ma esclude i risultati con valori specifici nell'AlbumTitle
attributo. Si noti che ciò non influisce sull'ScannedCount
oConsumedCapacity
, poiché il filtro viene applicato dopo la lettura degli elementi.aws dynamodb query \ --table-name
MusicCollection
\ --key-condition-expression"#n1 = :v1"
\ --filter-expression"NOT (#n2 IN (:v2, :v3))"
\ --expression-attribute-namesfile://names.json
\ --expression-attribute-valuesfile://values.json
\ --return-consumed-capacityTOTAL
Contenuto di
values.json
.{ ":v1": {"S": "No One You Know"}, ":v2": {"S": "Blue Sky Blues"}, ":v3": {"S": "Greatest Hits"} }
Contenuto di
names.json
.{ "#n1": "Artist", "#n2": "AlbumTitle" }
Output:
{ "Items": [ { "AlbumTitle": { "S": "Somewhat Famous" }, "Artist": { "S": "No One You Know" }, "SongTitle": { "S": "Call Me Today" } } ], "Count": 1, "ScannedCount": 2, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 0.5 } }
Per ulteriori informazioni, consulta Working with Queries in DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 4: per recuperare solo il numero di articoli
L'esempio seguente recupera il conteggio degli elementi corrispondenti alla query, ma non recupera nessuno degli elementi stessi.
aws dynamodb query \ --table-name
MusicCollection
\ --selectCOUNT
\ --key-condition-expression"Artist = :v1"
\ --expression-attribute-valuesfile://expression-attributes.json
Contenuto di
expression-attributes.json
.{ ":v1": {"S": "No One You Know"} }
Output:
{ "Count": 2, "ScannedCount": 2, "ConsumedCapacity": null }
Per ulteriori informazioni, consulta Working with Queries in DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 5: interrogare un indice
L'esempio seguente esegue una query sull'indice
AlbumTitleIndex
secondario locale. La query restituisce tutti gli attributi della tabella di base che sono stati proiettati nell'indice secondario locale. Si noti che quando si esegue una query su un indice secondario locale o su un indice secondario globale, è necessario fornire anche il nome della tabella di base utilizzando iltable-name
parametro.aws dynamodb query \ --table-name
MusicCollection
\ --index-nameAlbumTitleIndex
\ --key-condition-expression"Artist = :v1"
\ --expression-attribute-valuesfile://expression-attributes.json
\ --selectALL_PROJECTED_ATTRIBUTES
\ --return-consumed-capacityINDEXES
Contenuto di
expression-attributes.json
.{ ":v1": {"S": "No One You Know"} }
Output:
{ "Items": [ { "AlbumTitle": { "S": "Blue Sky Blues" }, "Artist": { "S": "No One You Know" }, "SongTitle": { "S": "Scared of My Shadow" } }, { "AlbumTitle": { "S": "Somewhat Famous" }, "Artist": { "S": "No One You Know" }, "SongTitle": { "S": "Call Me Today" } } ], "Count": 2, "ScannedCount": 2, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 0.5, "Table": { "CapacityUnits": 0.0 }, "LocalSecondaryIndexes": { "AlbumTitleIndex": { "CapacityUnits": 0.5 } } } }
Per ulteriori informazioni, consulta Working with Queries in DynamoDB nella Amazon DynamoDB Developer Guide.
Il seguente esempio di codice mostra come utilizzarerestore-table-from-backup
.
- AWS CLI
-
Per ripristinare una tabella DynamoDB da un backup esistente
L'
restore-table-from-backup
esempio seguente ripristina la tabella specificata da un backup esistente.aws dynamodb restore-table-from-backup \ --target-table-name
MusicCollection
\ --backup-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3aOutput:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection2", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": 1576618274.326, "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection2", "TableId": "114865c9-5ef3-496c-b4d1-c4cbdd2d44fb", "BillingModeSummary": { "BillingMode": "PROVISIONED" }, "RestoreSummary": { "SourceBackupArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3a", "SourceTableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "RestoreDateTime": 1576616366.715, "RestoreInProgress": true } } }
Per ulteriori informazioni, consulta Backup e ripristino su richiesta per DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. RestoreTableFromBackup
AWS CLI
-
Il seguente esempio di codice mostra come utilizzarerestore-table-to-point-in-time
.
- AWS CLI
-
Per ripristinare una tabella DynamoDB in un determinato momento
L'
restore-table-to-point-in-time
esempio seguente ripristina laMusicCollection
tabella nel momento specificato.aws dynamodb restore-table-to-point-in-time \ --source-table-name
MusicCollection
\ --target-table-nameMusicCollectionRestore
\ --restore-date-time1576622404.0
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollectionRestore", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "CREATING", "CreationDateTime": 1576623311.86, "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 5, "WriteCapacityUnits": 5 }, "TableSizeBytes": 0, "ItemCount": 0, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollectionRestore", "TableId": "befd9e0e-1843-4dc6-a147-d6d00e85cb1f", "BillingModeSummary": { "BillingMode": "PROVISIONED" }, "RestoreSummary": { "SourceTableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "RestoreDateTime": 1576622404.0, "RestoreInProgress": true } } }
Per ulteriori informazioni, consulta Point-in-Time Recovery for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta RestoreTableToPointInTime
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzarescan
.
- AWS CLI
-
Per scansionare una tabella
L'
scan
esempio seguente esegue la scansione dell'interaMusicCollection
tabella, quindi restringe i risultati alle canzoni dell'artista «No One You Know». Per ogni elemento, vengono restituiti solo il titolo dell'album e il titolo del brano.aws dynamodb scan \ --table-name
MusicCollection
\ --filter-expression"Artist = :a"
\ --projection-expression"#ST, #AT"
\ --expression-attribute-namesfile://expression-attribute-names.json
\ --expression-attribute-valuesfile://expression-attribute-values.json
Contenuto di
expression-attribute-names.json
.{ "#ST": "SongTitle", "#AT":"AlbumTitle" }
Contenuto di
expression-attribute-values.json
.{ ":a": {"S": "No One You Know"} }
Output:
{ "Count": 2, "Items": [ { "SongTitle": { "S": "Call Me Today" }, "AlbumTitle": { "S": "Somewhat Famous" } }, { "SongTitle": { "S": "Scared of My Shadow" }, "AlbumTitle": { "S": "Blue Sky Blues" } } ], "ScannedCount": 3, "ConsumedCapacity": null }
Per ulteriori informazioni, consulta Working with Scans in DynamoDB nella Amazon DynamoDB Developer Guide.
Il seguente esempio di codice mostra come utilizzaretag-resource
.
- AWS CLI
-
Per aggiungere tag a una risorsa DynamoDB
L'
tag-resource
esempio seguente aggiunge una coppia chiave/valore di tag alla tabella.MusicCollection
aws dynamodb tag-resource \ --resource-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection
\ --tagsKey=Owner,Value=blueTeam
Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. TagResource
AWS CLI
-
Il seguente esempio di codice mostra come utilizzaretransact-get-items
.
- AWS CLI
-
Per recuperare più elementi atomicamente da una o più tabelle
L'
transact-get-items
esempio seguente recupera più elementi in modo atomico.aws dynamodb transact-get-items \ --transact-items
file://transact-items.json
\ --return-consumed-capacityTOTAL
Contenuto di
transact-items.json
.[ { "Get": { "Key": { "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }, "TableName": "MusicCollection" } }, { "Get": { "Key": { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"} }, "TableName": "MusicCollection" } } ]
Output:
{ "ConsumedCapacity": [ { "TableName": "MusicCollection", "CapacityUnits": 4.0, "ReadCapacityUnits": 4.0 } ], "Responses": [ { "Item": { "AlbumTitle": { "S": "Songs About Life" }, "Artist": { "S": "Acme Band" }, "SongTitle": { "S": "Happy Day" } } }, { "Item": { "AlbumTitle": { "S": "Somewhat Famous" }, "Artist": { "S": "No One You Know" }, "SongTitle": { "S": "Call Me Today" } } } ] }
Per ulteriori informazioni, consulta Managing Complex Workflows with DynamoDB Transactions nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. TransactGetItems
AWS CLI
-
Il seguente esempio di codice mostra come utilizzaretransact-write-items
.
- AWS CLI
-
Esempio 1: scrivere elementi atomicamente su una o più tabelle
L'
transact-write-items
esempio seguente aggiorna un elemento e ne elimina un altro. L'operazione ha esito negativo se una delle operazioni fallisce o se uno degli elementi contiene unRating
attributo.aws dynamodb transact-write-items \ --transact-items
file://transact-items.json
\ --return-consumed-capacityTOTAL
\ --return-item-collection-metricsSIZE
Contenuto del
transact-items.json
file:[ { "Update": { "Key": { "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }, "UpdateExpression": "SET AlbumTitle = :newval", "ExpressionAttributeValues": { ":newval": {"S": "Updated Album Title"} }, "TableName": "MusicCollection", "ConditionExpression": "attribute_not_exists(Rating)" } }, { "Delete": { "Key": { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"} }, "TableName": "MusicCollection", "ConditionExpression": "attribute_not_exists(Rating)" } } ]
Output:
{ "ConsumedCapacity": [ { "TableName": "MusicCollection", "CapacityUnits": 10.0, "WriteCapacityUnits": 10.0 } ], "ItemCollectionMetrics": { "MusicCollection": [ { "ItemCollectionKey": { "Artist": { "S": "No One You Know" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] }, { "ItemCollectionKey": { "Artist": { "S": "Acme Band" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] } ] } }
Per ulteriori informazioni, consulta Managing Complex Workflows with DynamoDB Transactions nella Amazon DynamoDB Developer Guide.
Esempio 2: scrivere elementi in modo atomico utilizzando un token di richiesta del cliente
Il comando seguente utilizza un token di richiesta client per effettuare la chiamata a
transact-write-items
idempotent, il che significa che più chiamate hanno lo stesso effetto di una singola chiamata.aws dynamodb transact-write-items \ --transact-items
file://transact-items.json
\ --client-request-tokenabc123
Contenuto del file:
transact-items.json
[ { "Update": { "Key": { "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }, "UpdateExpression": "SET AlbumTitle = :newval", "ExpressionAttributeValues": { ":newval": {"S": "Updated Album Title"} }, "TableName": "MusicCollection", "ConditionExpression": "attribute_not_exists(Rating)" } }, { "Delete": { "Key": { "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"} }, "TableName": "MusicCollection", "ConditionExpression": "attribute_not_exists(Rating)" } } ]
Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Managing Complex Workflows with DynamoDB Transactions nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. TransactWriteItems
AWS CLI
-
Il seguente esempio di codice mostra come utilizzareuntag-resource
.
- AWS CLI
-
Per rimuovere un tag da una risorsa DynamoDB
L'
untag-resource
esempio seguente rimuove il tag con la chiaveOwner
dallaMusicCollection
tabella.aws dynamodb untag-resource \ --resource-arn
arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection
\ --tag-keysOwner
Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. UntagResource
AWS CLI
-
Il seguente esempio di codice mostra come utilizzareupdate-continuous-backups
.
- AWS CLI
-
Per aggiornare le impostazioni di backup continuo per una tabella DynamoDB
L'
update-continuous-backups
esempio seguente abilita point-in-time il ripristino dellaMusicCollection
tabella.aws dynamodb update-continuous-backups \ --table-name
MusicCollection
\ --point-in-time-recovery-specificationPointInTimeRecoveryEnabled=true
Output:
{ "ContinuousBackupsDescription": { "ContinuousBackupsStatus": "ENABLED", "PointInTimeRecoveryDescription": { "PointInTimeRecoveryStatus": "ENABLED", "EarliestRestorableDateTime": 1576622404.0, "LatestRestorableDateTime": 1576622404.0 } } }
Per ulteriori informazioni, consulta Point-in-Time Recovery for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta UpdateContinuousBackups
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzareupdate-contributor-insights
.
- AWS CLI
-
Per abilitare Contributor Insights su una tabella
L'
update-contributor-insights
esempio seguente abilita Contributor Insights nellaMusicCollection
tabella e nell'indice secondarioAlbumTitle-index
globale.aws dynamodb update-contributor-insights \ --table-name
MusicCollection
\ --index-nameAlbumTitle-index
\ --contributor-insights-actionENABLE
Output:
{ "TableName": "MusicCollection", "IndexName": "AlbumTitle-index", "ContributorInsightsStatus": "ENABLING" }
Per ulteriori informazioni, consulta Analyzing Data Access Using CloudWatch Contributor Insights for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta Command Reference. UpdateContributorInsights
AWS CLI
-
Il seguente esempio di codice mostra come utilizzareupdate-global-table-settings
.
- AWS CLI
-
Per aggiornare le impostazioni della capacità di scrittura assegnata su una tabella globale DynamoDB
L'
update-global-table-settings
esempio seguente imposta la capacità di scrittura assegnata alla tabellaMusicCollection
globale su 15.aws dynamodb update-global-table-settings \ --global-table-name
MusicCollection
\ --global-table-provisioned-write-capacity-units15
Output:
{ "GlobalTableName": "MusicCollection", "ReplicaSettings": [ { "RegionName": "eu-west-1", "ReplicaStatus": "UPDATING", "ReplicaProvisionedReadCapacityUnits": 10, "ReplicaProvisionedReadCapacityAutoScalingSettings": { "AutoScalingDisabled": true }, "ReplicaProvisionedWriteCapacityUnits": 10, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "AutoScalingDisabled": true } }, { "RegionName": "us-east-1", "ReplicaStatus": "UPDATING", "ReplicaProvisionedReadCapacityUnits": 10, "ReplicaProvisionedReadCapacityAutoScalingSettings": { "AutoScalingDisabled": true }, "ReplicaProvisionedWriteCapacityUnits": 10, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "AutoScalingDisabled": true } }, { "RegionName": "us-east-2", "ReplicaStatus": "UPDATING", "ReplicaProvisionedReadCapacityUnits": 10, "ReplicaProvisionedReadCapacityAutoScalingSettings": { "AutoScalingDisabled": true }, "ReplicaProvisionedWriteCapacityUnits": 10, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "AutoScalingDisabled": true } } ] }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta UpdateGlobalTableSettings
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzareupdate-global-table
.
- AWS CLI
-
Per aggiornare una tabella globale DynamoDB
L'
update-global-table
esempio seguente aggiunge una replica nella regione specificata allaMusicCollection
tabella globale.aws dynamodb update-global-table \ --global-table-name
MusicCollection
\ --replica-updatesCreate={RegionName=eu-west-1}
Output:
{ "GlobalTableDescription": { "ReplicationGroup": [ { "RegionName": "eu-west-1" }, { "RegionName": "us-east-2" }, { "RegionName": "us-east-1" } ], "GlobalTableArn": "arn:aws:dynamodb::123456789012:global-table/MusicCollection", "CreationDateTime": 1576625818.532, "GlobalTableStatus": "ACTIVE", "GlobalTableName": "MusicCollection" } }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta UpdateGlobalTable
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzareupdate-item
.
- AWS CLI
-
Esempio 1: aggiornare un elemento in una tabella
L'esempio
update-item
seguente legge una voce dalla tabellaMusicCollection
. Aggiunge un nuovo attributo (Year
) e modifica l'AlbumTitle
attributo. Tutti gli attributi dell'elemento, così come appaiono dopo l'aggiornamento, vengono restituiti nella risposta.aws dynamodb update-item \ --table-name
MusicCollection
\ --keyfile://key.json
\ --update-expression"SET #Y = :y, #AT = :t"
\ --expression-attribute-namesfile://expression-attribute-names.json
\ --expression-attribute-valuesfile://expression-attribute-values.json
\ --return-valuesALL_NEW
\ --return-consumed-capacityTOTAL
\ --return-item-collection-metricsSIZE
Contenuto di
key.json
.{ "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }
Contenuto di
expression-attribute-names.json
.{ "#Y":"Year", "#AT":"AlbumTitle" }
Contenuto di
expression-attribute-values.json
.{ ":y":{"N": "2015"}, ":t":{"S": "Louder Than Ever"} }
Output:
{ "Attributes": { "AlbumTitle": { "S": "Louder Than Ever" }, "Awards": { "N": "10" }, "Artist": { "S": "Acme Band" }, "Year": { "N": "2015" }, "SongTitle": { "S": "Happy Day" } }, "ConsumedCapacity": { "TableName": "MusicCollection", "CapacityUnits": 3.0 }, "ItemCollectionMetrics": { "ItemCollectionKey": { "Artist": { "S": "Acme Band" } }, "SizeEstimateRangeGB": [ 0.0, 1.0 ] } }
Per ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
Esempio 2: aggiornare un articolo in modo condizionale
L'esempio seguente aggiorna un elemento nella
MusicCollection
tabella, ma solo se l'elemento esistente non ha già unYear
attributo.aws dynamodb update-item \ --table-name
MusicCollection
\ --keyfile://key.json
\ --update-expression"SET #Y = :y, #AT = :t"
\ --expression-attribute-namesfile://expression-attribute-names.json
\ --expression-attribute-valuesfile://expression-attribute-values.json
\ --condition-expression"attribute_not_exists(#Y)"
Contenuto di
key.json
.{ "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} }
Contenuto di
expression-attribute-names.json
.{ "#Y":"Year", "#AT":"AlbumTitle" }
Contenuto di
expression-attribute-values.json
.{ ":y":{"N": "2015"}, ":t":{"S": "Louder Than Ever"} }
Se l'elemento ha già un
Year
attributo, DynamoDB restituisce il seguente output.An error occurred (ConditionalCheckFailedException) when calling the UpdateItem operation: The conditional request failed
Per ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdateItem
Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-table-replica-auto-scaling
.
- AWS CLI
-
Per aggiornare le impostazioni di ridimensionamento automatico tra le repliche di una tabella globale
L'
update-table-replica-auto-scaling
esempio seguente aggiorna le impostazioni di auto scaling della capacità di scrittura tra le repliche della tabella globale specificata.aws dynamodb update-table-replica-auto-scaling \ --table-name
MusicCollection
\ --provisioned-write-capacity-auto-scaling-updatefile://auto-scaling-policy.json
Contenuto di
auto-scaling-policy.json
.{ "MinimumUnits": 10, "MaximumUnits": 100, "AutoScalingDisabled": false, "ScalingPolicyUpdate": { "PolicyName": "DynamoDBWriteCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 80 } } }
Output:
{ "TableAutoScalingDescription": { "TableName": "MusicCollection", "TableStatus": "ACTIVE", "Replicas": [ { "RegionName": "eu-central-1", "GlobalSecondaryIndexes": [], "ReplicaProvisionedReadCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBReadCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "MinimumUnits": 10, "MaximumUnits": 100, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBWriteCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 80.0 } } ] }, "ReplicaStatus": "ACTIVE" }, { "RegionName": "us-east-1", "GlobalSecondaryIndexes": [], "ReplicaProvisionedReadCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBReadCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "MinimumUnits": 10, "MaximumUnits": 100, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBWriteCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 80.0 } } ] }, "ReplicaStatus": "ACTIVE" }, { "RegionName": "us-east-2", "GlobalSecondaryIndexes": [], "ReplicaProvisionedReadCapacityAutoScalingSettings": { "MinimumUnits": 5, "MaximumUnits": 40000, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBReadCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0 } } ] }, "ReplicaProvisionedWriteCapacityAutoScalingSettings": { "MinimumUnits": 10, "MaximumUnits": 100, "AutoScalingRoleArn": "arn:aws:iam::123456789012:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable", "ScalingPolicies": [ { "PolicyName": "DynamoDBWriteCapacityUtilization:table/MusicCollection", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 80.0 } } ] }, "ReplicaStatus": "ACTIVE" } ] } }
Per ulteriori informazioni, consulta DynamoDB Global Tables nella Amazon DynamoDB Developer Guide.
-
Per i API dettagli, consulta UpdateTableReplicaAutoScaling
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzareupdate-table
.
- AWS CLI
-
Esempio 1: modificare la modalità di fatturazione di una tabella
L'
update-table
esempio seguente aumenta la capacità di lettura e scrittura assegnata allaMusicCollection
tabella.aws dynamodb update-table \ --table-name
MusicCollection
\ --billing-modePROVISIONED
\ --provisioned-throughputReadCapacityUnits=15,WriteCapacityUnits=10
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "AlbumTitle", "AttributeType": "S" }, { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "UPDATING", "CreationDateTime": "2020-05-26T15:59:49.473000-07:00", "ProvisionedThroughput": { "LastIncreaseDateTime": "2020-07-28T13:18:18.921000-07:00", "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 15, "WriteCapacityUnits": 10 }, "TableSizeBytes": 182, "ItemCount": 2, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "abcd0123-01ab-23cd-0123-abcdef123456", "BillingModeSummary": { "BillingMode": "PROVISIONED", "LastUpdateToPayPerRequestDateTime": "2020-07-28T13:14:48.366000-07:00" } } }
Per ulteriori informazioni, consulta Updating a Table nella Amazon DynamoDB Developer Guide.
Esempio 2: creare un indice secondario globale
L'esempio seguente aggiunge un indice secondario globale alla
MusicCollection
tabella.aws dynamodb update-table \ --table-name
MusicCollection
\ --attribute-definitionsAttributeName=AlbumTitle,AttributeType=S
\ --global-secondary-index-updatesfile://gsi-updates.json
Contenuto di
gsi-updates.json
.[ { "Create": { "IndexName": "AlbumTitle-index", "KeySchema": [ { "AttributeName": "AlbumTitle", "KeyType": "HASH" } ], "ProvisionedThroughput": { "ReadCapacityUnits": 10, "WriteCapacityUnits": 10 }, "Projection": { "ProjectionType": "ALL" } } } ]
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "AlbumTitle", "AttributeType": "S" }, { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "UPDATING", "CreationDateTime": "2020-05-26T15:59:49.473000-07:00", "ProvisionedThroughput": { "LastIncreaseDateTime": "2020-07-28T12:59:17.537000-07:00", "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 15, "WriteCapacityUnits": 10 }, "TableSizeBytes": 182, "ItemCount": 2, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "abcd0123-01ab-23cd-0123-abcdef123456", "BillingModeSummary": { "BillingMode": "PROVISIONED", "LastUpdateToPayPerRequestDateTime": "2020-07-28T13:14:48.366000-07:00" }, "GlobalSecondaryIndexes": [ { "IndexName": "AlbumTitle-index", "KeySchema": [ { "AttributeName": "AlbumTitle", "KeyType": "HASH" } ], "Projection": { "ProjectionType": "ALL" }, "IndexStatus": "CREATING", "Backfilling": false, "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 10 }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/index/AlbumTitle-index" } ] } }
Per ulteriori informazioni, consulta Updating a Table nella Amazon DynamoDB Developer Guide.
Esempio 3: abilitare DynamoDB Streams su una tabella
Il comando seguente abilita DynamoDB Streams sulla tabella.
MusicCollection
aws dynamodb update-table \ --table-name
MusicCollection
\ --stream-specificationStreamEnabled=true,StreamViewType=NEW_IMAGE
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "AlbumTitle", "AttributeType": "S" }, { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "UPDATING", "CreationDateTime": "2020-05-26T15:59:49.473000-07:00", "ProvisionedThroughput": { "LastIncreaseDateTime": "2020-07-28T12:59:17.537000-07:00", "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 15, "WriteCapacityUnits": 10 }, "TableSizeBytes": 182, "ItemCount": 2, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "abcd0123-01ab-23cd-0123-abcdef123456", "BillingModeSummary": { "BillingMode": "PROVISIONED", "LastUpdateToPayPerRequestDateTime": "2020-07-28T13:14:48.366000-07:00" }, "LocalSecondaryIndexes": [ { "IndexName": "AlbumTitleIndex", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "AlbumTitle", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "INCLUDE", "NonKeyAttributes": [ "Year", "Genre" ] }, "IndexSizeBytes": 139, "ItemCount": 2, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/index/AlbumTitleIndex" } ], "GlobalSecondaryIndexes": [ { "IndexName": "AlbumTitle-index", "KeySchema": [ { "AttributeName": "AlbumTitle", "KeyType": "HASH" } ], "Projection": { "ProjectionType": "ALL" }, "IndexStatus": "ACTIVE", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 10 }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/index/AlbumTitle-index" } ], "StreamSpecification": { "StreamEnabled": true, "StreamViewType": "NEW_IMAGE" }, "LatestStreamLabel": "2020-07-28T21:53:39.112", "LatestStreamArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/stream/2020-07-28T21:53:39.112" } }
Per ulteriori informazioni, consulta Updating a Table nella Amazon DynamoDB Developer Guide.
Esempio 4: Per abilitare la crittografia lato server
L'esempio seguente abilita la crittografia lato server sulla tabella.
MusicCollection
aws dynamodb update-table \ --table-name
MusicCollection
\ --sse-specificationEnabled=true,SSEType=KMS
Output:
{ "TableDescription": { "AttributeDefinitions": [ { "AttributeName": "AlbumTitle", "AttributeType": "S" }, { "AttributeName": "Artist", "AttributeType": "S" }, { "AttributeName": "SongTitle", "AttributeType": "S" } ], "TableName": "MusicCollection", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "SongTitle", "KeyType": "RANGE" } ], "TableStatus": "ACTIVE", "CreationDateTime": "2020-05-26T15:59:49.473000-07:00", "ProvisionedThroughput": { "LastIncreaseDateTime": "2020-07-28T12:59:17.537000-07:00", "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 15, "WriteCapacityUnits": 10 }, "TableSizeBytes": 182, "ItemCount": 2, "TableArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "TableId": "abcd0123-01ab-23cd-0123-abcdef123456", "BillingModeSummary": { "BillingMode": "PROVISIONED", "LastUpdateToPayPerRequestDateTime": "2020-07-28T13:14:48.366000-07:00" }, "LocalSecondaryIndexes": [ { "IndexName": "AlbumTitleIndex", "KeySchema": [ { "AttributeName": "Artist", "KeyType": "HASH" }, { "AttributeName": "AlbumTitle", "KeyType": "RANGE" } ], "Projection": { "ProjectionType": "INCLUDE", "NonKeyAttributes": [ "Year", "Genre" ] }, "IndexSizeBytes": 139, "ItemCount": 2, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/index/AlbumTitleIndex" } ], "GlobalSecondaryIndexes": [ { "IndexName": "AlbumTitle-index", "KeySchema": [ { "AttributeName": "AlbumTitle", "KeyType": "HASH" } ], "Projection": { "ProjectionType": "ALL" }, "IndexStatus": "ACTIVE", "ProvisionedThroughput": { "NumberOfDecreasesToday": 0, "ReadCapacityUnits": 10, "WriteCapacityUnits": 10 }, "IndexSizeBytes": 0, "ItemCount": 0, "IndexArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/index/AlbumTitle-index" } ], "StreamSpecification": { "StreamEnabled": true, "StreamViewType": "NEW_IMAGE" }, "LatestStreamLabel": "2020-07-28T21:53:39.112", "LatestStreamArn": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/stream/2020-07-28T21:53:39.112", "SSEDescription": { "Status": "UPDATING" } } }
Per ulteriori informazioni, consulta Updating a Table nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdateTable
Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-time-to-live
.
- AWS CLI
-
Per aggiornare le impostazioni Time to Live su una tabella
L'
update-time-to-live
esempio seguente abilita Time to Live nella tabella specificata.aws dynamodb update-time-to-live \ --table-name
MusicCollection
\ --time-to-live-specificationEnabled=true,AttributeName=ttl
Output:
{ "TimeToLiveSpecification": { "Enabled": true, "AttributeName": "ttl" } }
Per ulteriori informazioni, consulta Time to Live nella Amazon DynamoDB Developer Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdateTimeToLive
Reference.
-