I haven\'t able to find documentation within Amazon on this: does anyone know if the delete operation counts against your read or write capacity?
I had expected it would
Good question - while this doesn't seem to be specified explicitly, there are still two strong hints towards being counted as a write operation (as one would expect indeed):
1) Section Time Series Data and Access Patterns within Provisioned Throughput Guidelines in Amazon DynamoDB addresses efficient deletion and refers to affected write throughput:
Deleting an entire table is significantly more efficient than removing items one-by-one, which essentially doubles the write throughput as you do as many delete operations as put operations.
2) Section Responses within the DeleteItem API lists the return value ConsumedCapacityUnits and refers to write capacity units:
The number of write capacity units consumed by the operation. This value shows the number applied toward your provisioned throughput. For more information see Provisioned Throughput in Amazon DynamoDB.
Yes, it does. The documentation clearly says:
PutItem
,UpdateItem
, andDeleteItem
allow conditional writes, where you specify an expression that must evaluate to true in order for the operation to succeed. If the expression evaluates to false, DynamoDB will still consume write capacity units from the table:
If the item exists, the number of write capacity units consumed depends on the size of the item. (For example, a failed conditional write of a 1 KB item would consume one write capacity unit; if the item were twice that size, the failed conditional write would consume two write capacity units.)
If the item does not exist, DynamoDB will consume one write capacity unit.
Source: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/CapacityUnitCalculations.html#ItemSizeCalculations.Writes