J'ai créé un tableau en utilisant cette commande AWS CLI :
aws dynamodb create-table --table-name test_table --attribute-definitions AttributeName=time_stamp,AttributeType=N AttributeName=watch_uuid,AttributeType=S --key-schema AttributeName=watch_uuid,KeyType=HASH AttributeName=time_stamp,KeyType=RANGE --billing-mode PROVISIONED --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1
J'ai ensuite essayé d'insérer deux lignes en utilisant cette commande :
aws dynamodb batch-write-item --request-items file://items.json.1.batch.write.txt
et le contenu de ce fichier :
{
"test_table": [
{
"PutRequest": {
"Item": {
"owner_name": {
"S": "Test watch 3"
},
"time_stamp": {
"N": "1541524533453"
},
"watch_uuid": {
"S": "A9A0E8B2-CD8D-464A-8787-383A85919A06_1541524533453_Test watch 3"
},
"y_user_accel": {
"S": "0.07286"
}
}
},
"PutRequest": {
"Item": {
"owner_name": {
"S": "Test watch 4"
},
"time_stamp": {
"N": "1541524533765"
},
"watch_uuid": {
"S": "A9A0E8B2-CD8D-464A-8787-383A85919A06_1541524533453_Test watch 4"
},
"y_user_accel": {
"S": "0.07286"
}
}
}
}
]
}
Je n'ai pas obtenu d'erreur ou d'indication que l'insertion ne concernait qu'une seule ligne, mais la base de données ne contient plus qu'une seule ligne. J'ai essayé de jouer avec la structure du fichier, sans succès. Soit j'obtiens une erreur (parce que la structure était incorrecte), soit une seule ligne de données est insérée.
J'ai également essayé de modifier les numéros de provisionnement de 1 à 25. Cela n'a pas aidé non plus.
Je suis presque sûr que le problème se situe au niveau de la structure du fichier, mais la documentation est incohérente quant à ce que devrait être la structure.
Toute réflexion serait très appréciée. Merci.