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 count as a "write", but the behavior I'm seeing in testing seems to indicate the opposite. Can someone confirm this?
One write capacity unit represents one write per second for an item up to 1 KB in size. If you need to write an item that is larger than 1 KB, DynamoDB must consume additional write capacity units. Transactional write requests require 2 write capacity units to perform one write per second for items up to 1 KB.
Reserved capacity is a billing feature that allows you to obtain discounts on your provisioned DynamoDB throughput capacity in exchange for a one-time up-front payment and commitment to a certain usage level. DynamoDB reserved capacity applies to a specific AWS region and can be purchased with 1-year or 3-year terms.
A write capacity unit represents one write per second, for an item up to 1 KB in size. For example, suppose that you create a table with 10 write capacity units. This allows you to perform 10 writes per second, for items up to 1 KB in size per second. Item sizes for writes are rounded up to the next 1 KB multiple.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With