ich eine DynamoDB Tabelle mit einer Partition Schlüssel id
und Sortierschlüssel value
batchWriteItem mit der gleichen Partition Schlüssel
Jetzt habe ich möchte batchWriteItem
laufen mehrere Elemente mit der gleichen Partition Schlüssel und einem anderen Sortierschlüssel aber es einfügen nur fügt das letzte Element:
$response = $dynamoDb->batchWriteItem([
'RequestItems' => [
'mytable' => [
[
'PutRequest' => [
'Item' => [
'id' => array('S' => '123abc'),
'value' => array('N' => '1'),
],
'Item' => [
'id' => array('S' => '123abc'),
'value' => array('N' => '2'),
],
'Item' => [
'id' => array('S' => '123abc'),
'value' => array('N' => '3'),
]],
],
],
],
]);
mit diesem Code nur das Element mit dem Wert 3
eingefügt wird
"Items": [
{
"id": {
"S": "123abc"
},
"value": {
"N": "3"
}
}
],
Gibt es etwas falsch mit dem Code oder etwas, das ich nicht berücksichtigt habe?
Es funktioniert perfekt, wenn einzelne Anfragen zu tun:
$response = $dynamoDb->putItem(array(
'TableName' => 'mytable',
'Item' => array(
'id' => array('S' => '123abc'),
'value' => array('N' => '1'),
),
));
$response = $dynamoDb->putItem(array(
'TableName' => 'mytable',
'Item' => array(
'id' => array('S' => '123abc'),
'value' => array('N' => '2'),
),
));
$response = $dynamoDb->putItem(array(
'TableName' => 'mytable',
'Item' => array(
'id' => array('S' => '123abc'),
'value' => array('N' => '3'),
),
));
Gibt es einen Unterschied zwischen performence batchWriteItem
oder 3 Einzel putItem
reuests in Folge zu tun?
Ich habe es mit Ihrer Syntax versucht und es wird nur die Zeile mit Wert 2 einfügen, die mit Wert 1 wird ignoriert. – maddo7
Haben Sie den Referenzlink überprüft? –