Sono disponibili altri esempi AWS SDK nel repository AWS Doc SDK
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. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un collegamento al codice sorgente completo, dove è 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-itemsesempio seguente legge più elementi dallaMusicCollectiontabella utilizzando un batch di treGetItemrichieste e richiede il numero di unità di capacità di lettura utilizzate dall'operazione. Il comando restituisce solo l'AlbumTitleattributo.aws dynamodb batch-get-item \ --request-itemsfile://request-items.json\ --return-consumed-capacityTOTALContenuto 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 i dettagli sull'API, 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-itemesempio seguente aggiunge tre nuovi elementi allaMusicCollectiontabella utilizzando un batch di trePutItemrichieste. 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-itemsfile://request-items.json\ --return-consumed-capacityINDEXES\ --return-item-collection-metricsSIZEContenuto 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 i dettagli sull'API, 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-backupesempio seguente crea un backup dellaMusicCollectiontabella.aws dynamodb create-backup \ --table-nameMusicCollection\ --backup-nameMusicCollectionBackupOutput:
{ "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 dettagli sull'API, 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-tableesempio seguente crea una tabella globale da due tabelle identiche nelle AWS regioni separate specificate.aws dynamodb create-global-table \ --global-table-nameMusicCollection\ --replication-groupRegionName=us-east-2RegionName=us-east-1\ --regionus-east-2Output:
{ "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 dettagli sull'API, 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-tableesempio 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 CMK di AWS proprietà predefinita. Il comando applica anche un tag alla tabella, con una chiave diOwnere un valore di.blueTeamaws dynamodb create-table \ --table-nameMusicCollection\ --attribute-definitionsAttributeName=Artist,AttributeType=SAttributeName=SongTitle,AttributeType=S\ --key-schemaAttributeName=Artist,KeyType=HASHAttributeName=SongTitle,KeyType=RANGE\ --provisioned-throughputReadCapacityUnits=5,WriteCapacityUnits=5\ --tagsKey=Owner,Value=blueTeamOutput:
{ "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
MusicCollectionutilizzando 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-nameMusicCollection\ --attribute-definitionsAttributeName=Artist,AttributeType=SAttributeName=SongTitle,AttributeType=S\ --key-schemaAttributeName=Artist,KeyType=HASHAttributeName=SongTitle,KeyType=RANGE\ --billing-modePAY_PER_REQUESTOutput:
{ "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 una CMK gestita dal cliente
L'esempio seguente crea una tabella denominata
MusicCollectione la crittografa utilizzando una CMK gestita dal cliente.aws dynamodb create-table \ --table-nameMusicCollection\ --attribute-definitionsAttributeName=Artist,AttributeType=SAttributeName=SongTitle,AttributeType=S\ --key-schemaAttributeName=Artist,KeyType=HASHAttributeName=SongTitle,KeyType=RANGE\ --provisioned-throughputReadCapacityUnits=5,WriteCapacityUnits=5\ --sse-specificationEnabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234Output:
{ "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
MusicCollectioncon un indice secondario locale denominatoAlbumTitleIndex.aws dynamodb create-table \ --table-nameMusicCollection\ --attribute-definitionsAttributeName=Artist,AttributeType=SAttributeName=SongTitle,AttributeType=SAttributeName=AlbumTitle,AttributeType=S\ --key-schemaAttributeName=Artist,KeyType=HASHAttributeName=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
GameScorescon un indice secondario globale chiamatoGameTitleIndex. La tabella di base ha una chiave di partizione diUserIde una chiave di ordinamento diGameTitle, permettendo di trovare il miglior punteggio di un singolo utente per un gioco specifico in modo efficiente, mentre il GSI ha una chiave di partizione diGameTitlee una chiave di ordinamento diTopScore, permettendo di trovare rapidamente il punteggio più alto complessivo per un determinato gioco.aws dynamodb create-table \ --table-nameGameScores\ --attribute-definitionsAttributeName=UserId,AttributeType=SAttributeName=GameTitle,AttributeType=SAttributeName=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
GameScorescon due indici secondari globali. Gli schemi GSI vengono passati tramite un file, anziché sulla riga di comando.aws dynamodb create-table \ --table-nameGameScores\ --attribute-definitionsAttributeName=UserId,AttributeType=SAttributeName=GameTitle,AttributeType=SAttributeName=TopScore,AttributeType=NAttributeName=Date,AttributeType=S\ --key-schemaAttributeName=UserId,KeyType=HASHAttributeName=GameTitle,KeyType=RANGE\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5\ --global-secondary-indexesfile://gsi.jsonContenuto 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
GameScorescon DynamoDB Streams abilitato. Sia le immagini nuove che quelle vecchie di ogni elemento verranno scritte nello stream.aws dynamodb create-table \ --table-nameGameScores\ --attribute-definitionsAttributeName=UserId,AttributeType=SAttributeName=GameTitle,AttributeType=S\ --key-schemaAttributeName=UserId,KeyType=HASHAttributeName=GameTitle,KeyType=RANGE\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5\ --stream-specificationStreamEnabled=TRUE,StreamViewType=NEW_AND_OLD_IMAGESOutput:
{ "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
GameScorescon DynamoDB Streams abilitato. Nel flusso vengono scritti solo gli attributi chiave degli elementi modificati.aws dynamodb create-table \ --table-nameGameScores\ --attribute-definitionsAttributeName=UserId,AttributeType=SAttributeName=GameTitle,AttributeType=S\ --key-schemaAttributeName=UserId,KeyType=HASHAttributeName=GameTitle,KeyType=RANGE\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5\ --stream-specificationStreamEnabled=TRUE,StreamViewType=KEYS_ONLYOutput:
{ "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
GameScorese 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-nameGameScores\ --attribute-definitionsAttributeName=UserId,AttributeType=SAttributeName=GameTitle,AttributeType=S\ --key-schemaAttributeName=UserId,KeyType=HASHAttributeName=GameTitle,KeyType=RANGE\ --provisioned-throughputReadCapacityUnits=10,WriteCapacityUnits=5\ --table-classSTANDARD_INFREQUENT_ACCESSOutput:
{ "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
GameScorese abilita la protezione da eliminazione.aws dynamodb create-table \ --table-nameGameScores\ --attribute-definitionsAttributeName=UserId,AttributeType=SAttributeName=GameTitle,AttributeType=S\ --key-schemaAttributeName=UserId,KeyType=HASHAttributeName=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 i dettagli sull'API, 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-backupesempio seguente elimina il backup esistente specificato.aws dynamodb delete-backup \ --backup-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3aOutput:
{ "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 dettagli sull'API, 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-itemesempio seguente elimina un elemento dallaMusicCollectiontabella e richiede i dettagli sull'elemento che è stato eliminato e sulla capacità utilizzata dalla richiesta.aws dynamodb delete-item \ --table-nameMusicCollection\ --keyfile://key.json\ --return-valuesALL_OLD\ --return-consumed-capacityTOTAL\ --return-item-collection-metricsSIZEContenuto 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
ProductCatalogtabella solo seProductCategoryè unoSporting Goodso l'altroGardening Suppliese il suo prezzo è compreso tra 500 e 600. Restituisce i dettagli sull'elemento che è stato eliminato.aws dynamodb delete-item \ --table-nameProductCatalog\ --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_OLDContenuto 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 i dettagli sull'API, consulta AWS CLI Command DeleteItem
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-table.
- AWS CLI
-
Per eliminare una tabella
L'
delete-tableesempio seguente elimina laMusicCollectiontabella.aws dynamodb delete-table \ --table-nameMusicCollectionOutput:
{ "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 i dettagli sull'API, 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-backupesempio seguente visualizza informazioni sul backup esistente specificato.aws dynamodb describe-backup \ --backup-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection/backup/01576616366715-b4e58d3aOutput:
{ "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 dettagli sull'API, 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-backupsesempio seguente mostra i dettagli sulle impostazioni di backup continuo per la tabella.MusicCollectionaws dynamodb describe-continuous-backups \ --table-nameMusicCollectionOutput:
{ "ContinuousBackupsDescription": { "ContinuousBackupsStatus": "ENABLED", "PointInTimeRecoveryDescription": { "PointInTimeRecoveryStatus": "DISABLED" } } }Per ulteriori informazioni, consulta Point-in-Time Recovery for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-insightsesempio seguente visualizza le impostazioni di Contributor Insights per laMusicCollectiontabella e l'AlbumTitle-indexindice secondario globale.aws dynamodb describe-contributor-insights \ --table-nameMusicCollection\ --index-nameAlbumTitle-indexOutput:
{ "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 dettagli sull'API, 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-endpointsesempio seguente mostra i dettagli sugli endpoint per la regione corrente AWS .aws dynamodb describe-endpointsOutput:
{ "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 dettagli sull'API, 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-settingsesempio seguente mostra le impostazioni per la tabellaMusicCollectionglobale.aws dynamodb describe-global-table-settings \ --global-table-nameMusicCollectionOutput:
{ "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 dettagli sull'API, 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-tableesempio seguente mostra i dettagli sulla tabellaMusicCollectionglobale.aws dynamodb describe-global-table \ --global-table-nameMusicCollectionOutput:
{ "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 dettagli sull'API, 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-limitsesempio seguente mostra i limiti di capacità prevista per il tuo account nella regione corrente. AWSaws dynamodb describe-limitsOutput:
{ "AccountMaxReadCapacityUnits": 80000, "AccountMaxWriteCapacityUnits": 80000, "TableMaxReadCapacityUnits": 40000, "TableMaxWriteCapacityUnits": 40000 }Per ulteriori informazioni, consulta Limits in DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-scalingesempio seguente visualizza le impostazioni di ridimensionamento automatico tra le repliche della tabellaMusicCollectionglobale.aws dynamodb describe-table-replica-auto-scaling \ --table-nameMusicCollectionOutput:
{ "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 dettagli sull'API, consulta DescribeTableReplicaAutoScaling
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredescribe-table.
- AWS CLI
-
Per descrivere una tabella
L'
describe-tableesempio seguente descrive laMusicCollectiontabella.aws dynamodb describe-table \ --table-nameMusicCollectionOutput:
{ "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 i dettagli sull'API, 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-liveesempio seguente visualizza le impostazioni Time to Live per laMusicCollectiontabella.aws dynamodb describe-time-to-live \ --table-nameMusicCollectionOutput:
{ "TimeToLiveDescription": { "TimeToLiveStatus": "ENABLED", "AttributeName": "ttl" } }Per ulteriori informazioni, consulta Time to Live nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-itemesempio seguente recupera un elemento dallaMusicCollectiontabella. La tabella ha una chiave hash-and-range primaria (ArtisteSongTitle), quindi è necessario specificare entrambi questi attributi. Il comando richiede anche informazioni sulla capacità di lettura consumata dall'operazione.aws dynamodb get-item \ --table-nameMusicCollection\ --keyfile://key.json\ --return-consumed-capacityTOTALContenuto 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
MusicCollectiontabella utilizzando letture fortemente coerenti.aws dynamodb get-item \ --table-nameMusicCollection\ --keyfile://key.json\ --consistent-read \ --return-consumed-capacityTOTALContenuto 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-nameProductCatalog\ --key '{"Id": {"N": "102"}}' \ --projection-expression"#T, #C, #P"\ --expression-attribute-namesfile://names.jsonContenuto 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 i dettagli sull'API, 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-backupsesempio seguente elenca tutti i backup esistenti.aws dynamodb list-backupsOutput:
{ "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
MusicCollectiontabella 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-nameMusicCollection\ --time-range-lower-bound1577836800\ --time-range-upper-bound1583020800\ --backup-typeUSEROutput:
{ "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-size1Output:
{ "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
NextTokenvalore con cui recuperare la pagina successiva di risultati.aws dynamodb list-backups \ --max-items1Output:
{ "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
NextTokenvalore di una precedente chiamata allist-backupscomando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextTokenvalore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-backups \ --starting-tokenabCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9Output
{ "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 dettagli sull'API, 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-insightsesempio seguente visualizza un elenco di riepiloghi di Contributor Insights.aws dynamodb list-contributor-insightsOutput:
{ "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
NextTokenvalore con cui recuperare la pagina successiva di risultati.aws dynamodb list-contributor-insights \ --max-results4Output:
{ "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
NextTokenvalore di una precedente chiamata allist-contributor-insightscomando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextTokenvalore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-contributor-insights \ --max-results4\ --next-tokenabCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9Output:
{ "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 dettagli sull'API, 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-tablesesempio seguente elenca tutte le tabelle globali esistenti.aws dynamodb list-global-tablesOutput:
{ "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 dettagli sull'API, 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-tablesesempio seguente elenca tutte le tabelle associate all' AWS account corrente e alla regione.aws dynamodb list-tablesOutput:
{ "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-size1Output:
{ "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
NextTokenvalore con cui recuperare la pagina successiva di risultati.aws dynamodb list-tables \ --max-items2Output:
{ "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
NextTokenvalore di una precedente chiamata allist-tablescomando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextTokenvalore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-tables \ --starting-tokenabCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9Output:
{ "TableNames": [ "Reply", "Thread" ] }Per ulteriori informazioni, consulta Listing Table Names nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-resourceesempio seguente visualizza i tag per laMusicCollectiontabella.aws dynamodb list-tags-of-resource \ --resource-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollectionOutput:
{ "Tags": [ { "Key": "Owner", "Value": "blueTeam" }, { "Key": "Environment", "Value": "Production" } ] }Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
Esempio 2: per limitare il numero di tag restituiti
L'esempio seguente limita il numero di tag restituiti a 1. La risposta include un
NextTokenvalore con cui recuperare la pagina successiva di risultati.aws dynamodb list-tags-of-resource \ --resource-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection\ --max-items1Output:
{ "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
NextTokenvalore di una precedente chiamata allist-tags-of-resourcecomando per recuperare un'altra pagina di risultati. Poiché la risposta in questo caso non include unNextTokenvalore, sappiamo di aver raggiunto la fine dei risultati.aws dynamodb list-tags-of-resource \ --resource-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection\ --starting-tokenabCDeFGhiJKlmnOPqrSTuvwxYZ1aBCdEFghijK7LM51nOpqRSTuv3WxY3ZabC5dEFGhI2Jk3LmnoPQ6RST9Output:
{ "Tags": [ { "Key": "Environment", "Value": "Production" } ] }Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-itemesempio seguente aggiunge un nuovo elemento alla MusicCollectiontabella.aws dynamodb put-item \ --table-nameMusicCollection\ --itemfile://item.json\ --return-consumed-capacityTOTAL\ --return-item-collection-metricsSIZEContenuto 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-itemesempio seguente sovrascrive un elemento esistente nellaMusicCollectiontabella solo se tale elemento esistente ha unAlbumTitleattributo con un valore di.Greatest HitsIl comando restituisce il valore precedente dell'elemento.aws dynamodb put-item \ --table-nameMusicCollection\ --itemfile://item.json\ --condition-expression"#A = :A"\ --expression-attribute-namesfile://names.json\ --expression-attribute-valuesfile://values.json\ --return-valuesALL_OLDContenuto 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 i dettagli sull'API, consulta AWS CLI Command PutItem
Reference.
-
Il seguente esempio di codice mostra come utilizzarequery.
- AWS CLI
-
Esempio 1: interrogare una tabella
L'
queryesempio seguente interroga gli elementi dellaMusicCollectiontabella. La tabella ha una chiave hash-and-range primaria (ArtisteSongTitle), 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-nameMusicCollection\ --projection-expression"SongTitle"\ --key-condition-expression"Artist = :v1"\ --expression-attribute-valuesfile://expression-attributes.json\ --return-consumed-capacityTOTALContenuto 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-nameMusicCollection\ --projection-expression"SongTitle"\ --key-condition-expression"Artist = :v1"\ --expression-attribute-valuesfile://expression-attributes.json\ --consistent-read \ --no-scan-index-forward \ --return-consumed-capacityTOTALContenuto 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
MusicCollectionma esclude i risultati con valori specifici nell'AlbumTitleattributo. Si noti che ciò non influisce sull'ScannedCountoConsumedCapacity, poiché il filtro viene applicato dopo la lettura degli elementi.aws dynamodb query \ --table-nameMusicCollection\ --key-condition-expression"#n1 = :v1"\ --filter-expression"NOT (#n2 IN (:v2, :v3))"\ --expression-attribute-namesfile://names.json\ --expression-attribute-valuesfile://values.json\ --return-consumed-capacityTOTALContenuto 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-nameMusicCollection\ --selectCOUNT\ --key-condition-expression"Artist = :v1"\ --expression-attribute-valuesfile://expression-attributes.jsonContenuto 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
AlbumTitleIndexsecondario 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-nameparametro.aws dynamodb query \ --table-nameMusicCollection\ --index-nameAlbumTitleIndex\ --key-condition-expression"Artist = :v1"\ --expression-attribute-valuesfile://expression-attributes.json\ --selectALL_PROJECTED_ATTRIBUTES\ --return-consumed-capacityINDEXESContenuto 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.
-
Per informazioni dettagliate sulle API, consulta Query
nella Documentazione di riferimento di AWS CLI .
-
Il seguente esempio di codice mostra come usare. restore-table-from-backup
- AWS CLI
-
Per ripristinare una tabella DynamoDB da un backup esistente
L'
restore-table-from-backupesempio seguente ripristina la tabella specificata da un backup esistente.aws dynamodb restore-table-from-backup \ --target-table-nameMusicCollection\ --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 dettagli sull'API, 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-timeesempio seguente ripristina laMusicCollectiontabella nel momento specificato.aws dynamodb restore-table-to-point-in-time \ --source-table-nameMusicCollection\ --target-table-nameMusicCollectionRestore\ --restore-date-time1576622404.0Output:
{ "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 dettagli sull'API, consulta RestoreTableToPointInTime
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzarescan.
- AWS CLI
-
Per scansionare una tabella
L'
scanesempio seguente esegue la scansione dell'interaMusicCollectiontabella, 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-nameMusicCollection\ --filter-expression"Artist = :a"\ --projection-expression"#ST, #AT"\ --expression-attribute-namesfile://expression-attribute-names.json\ --expression-attribute-valuesfile://expression-attribute-values.jsonContenuto 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.
-
Per informazioni dettagliate sulle API, consulta Scansione
nella Documentazione di riferimento di AWS CLI .
-
Il seguente esempio di codice mostra come usare. tag-resource
- AWS CLI
-
Per aggiungere tag a una risorsa DynamoDB
L'
tag-resourceesempio seguente aggiunge una key/value coppia di tag allaMusicCollectiontabella.aws dynamodb tag-resource \ --resource-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection\ --tagsKey=Owner,Value=blueTeamQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-itemsesempio seguente recupera più elementi in modo atomico.aws dynamodb transact-get-items \ --transact-itemsfile://transact-items.json\ --return-consumed-capacityTOTALContenuto 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 dettagli sull'API, 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-itemsesempio 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 unRatingattributo.aws dynamodb transact-write-items \ --transact-itemsfile://transact-items.json\ --return-consumed-capacityTOTAL\ --return-item-collection-metricsSIZEContenuto del
transact-items.jsonfile:[ { "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-itemsidempotent, il che significa che più chiamate hanno lo stesso effetto di una singola chiamata.aws dynamodb transact-write-items \ --transact-itemsfile://transact-items.json\ --client-request-tokenabc123Contenuto 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 dettagli sull'API, 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-resourceesempio seguente rimuove il tag con la chiaveOwnerdallaMusicCollectiontabella.aws dynamodb untag-resource \ --resource-arnarn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection\ --tag-keysOwnerQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Tagging for DynamoDB nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-backupsesempio seguente abilita point-in-time il ripristino dellaMusicCollectiontabella.aws dynamodb update-continuous-backups \ --table-nameMusicCollection\ --point-in-time-recovery-specificationPointInTimeRecoveryEnabled=trueOutput:
{ "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 dettagli sull'API, 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-insightsesempio seguente abilita Contributor Insights nellaMusicCollectiontabella e nell'indice secondarioAlbumTitle-indexglobale.aws dynamodb update-contributor-insights \ --table-nameMusicCollection\ --index-nameAlbumTitle-index\ --contributor-insights-actionENABLEOutput:
{ "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 dettagli sull'API, 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-settingsesempio seguente imposta la capacità di scrittura assegnata alla tabellaMusicCollectionglobale su 15.aws dynamodb update-global-table-settings \ --global-table-nameMusicCollection\ --global-table-provisioned-write-capacity-units15Output:
{ "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 dettagli sull'API, 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-tableesempio seguente aggiunge una replica nella regione specificata allaMusicCollectiontabella globale.aws dynamodb update-global-table \ --global-table-nameMusicCollection\ --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 dettagli sull'API, 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-itemseguente legge una voce dalla tabellaMusicCollection. Aggiunge un nuovo attributo (Year) e modifica l'AlbumTitleattributo. Tutti gli attributi dell'elemento, così come appaiono dopo l'aggiornamento, vengono restituiti nella risposta.aws dynamodb update-item \ --table-nameMusicCollection\ --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-metricsSIZEContenuto 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
MusicCollectiontabella, ma solo se l'elemento esistente non ha già unYearattributo.aws dynamodb update-item \ --table-nameMusicCollection\ --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
Yearattributo, DynamoDB restituisce il seguente output.An error occurred (ConditionalCheckFailedException) when calling the UpdateItem operation: The conditional request failedPer ulteriori informazioni, consulta Writing an Item in Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, 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-scalingesempio 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-nameMusicCollection\ --provisioned-write-capacity-auto-scaling-updatefile://auto-scaling-policy.jsonContenuto 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 dettagli sull'API, 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-tableesempio seguente aumenta la capacità di lettura e scrittura assegnata allaMusicCollectiontabella.aws dynamodb update-table \ --table-nameMusicCollection\ --billing-modePROVISIONED\ --provisioned-throughputReadCapacityUnits=15,WriteCapacityUnits=10Output:
{ "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
MusicCollectiontabella.aws dynamodb update-table \ --table-nameMusicCollection\ --attribute-definitionsAttributeName=AlbumTitle,AttributeType=S\ --global-secondary-index-updatesfile://gsi-updates.jsonContenuto 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.
MusicCollectionaws dynamodb update-table \ --table-nameMusicCollection\ --stream-specificationStreamEnabled=true,StreamViewType=NEW_IMAGEOutput:
{ "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.
MusicCollectionaws dynamodb update-table \ --table-nameMusicCollection\ --sse-specificationEnabled=true,SSEType=KMSOutput:
{ "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 i dettagli sull'API, 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-liveesempio seguente abilita Time to Live nella tabella specificata.aws dynamodb update-time-to-live \ --table-nameMusicCollection\ --time-to-live-specificationEnabled=true,AttributeName=ttlOutput:
{ "TimeToLiveSpecification": { "Enabled": true, "AttributeName": "ttl" } }Per ulteriori informazioni, consulta Time to Live nella Amazon DynamoDB Developer Guide.
-
Per i dettagli sull'API, consulta AWS CLI Command UpdateTimeToLive
Reference.
-