Delete All Items in DynamoDB Using Java (Guide w/ Code Examples)
![Rafal Wilinski](https://pbs.twimg.com/profile_images/1390706809548197895/SVCKpLNE_400x400.png)
Provided by Rafal Wilinski
This Following code uses the Scan
operation to retrieve all items from the "MyTable" table, then iterates over the returned items and calls the deleteItem
method to delete each item by providing its primary key ("id" in this case). The code also uses a do-while
loop to implement pagination to retrieve all the data, even if the table is larger than 1MB.
Remember that this approach can be very slow and resource-intensive for large tables, so using the Query
operation with a specific primary key is recommended if possible, or using the Truncate
operation if you're using DynamoDB On-Demand.
import com.amazonaws.services.dynamodbv2.AmazonDynamoDB; import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder; import com.amazonaws.services.dynamodbv2.model.DeleteItemRequest; import com.amazonaws.services.dynamodbv2.model.ScanRequest; import com.amazonaws.services.dynamodbv2.model.ScanResult; import java.util.Map; AmazonDynamoDB client = AmazonDynamoDBClientBuilder.defaultClient(); ScanRequest scanRequest = new ScanRequest().withTableName("MyTable"); ScanResult result; do { result = client.scan(scanRequest); for (Map<String, AttributeValue> item : result.getItems()) { Map<String, AttributeValue> key = new HashMap<>(); key.put("id", item.get("id")); DeleteItemRequest deleteItemRequest = new DeleteItemRequest().withTableName("MyTable").withKey(key); client.deleteItem(deleteItemRequest); } scanRequest.setExclusiveStartKey(result.getLastEvaluatedKey()); } while (result.getLastEvaluatedKey() != null);
Similar Code Examples
- Batch Query in DynamoDB Using Java
- Remove with DynamoDB Mapper
- Remove Item in DynamoDB Using Java
- Insert in DynamoDB Using Java
- Delete by Hashkey Using DynamoDB Mapper
- Remove Attribute in DynamoDB Using Java
- Update Item in DynamoDB Using Java
- Get in DynamoDB Using Java
- Batch Insert in DynamoDB Using Java
- Conditional Update in DynamoDB Using Java
- Batch Delete Using DynamoDB Mapper
- Query Hash Key Only in DynamoDB Using Java
- Delete Expression in DynamoDB Using Java
- Batch Write Item in DynamoDB Using Java
- Query Date Range in DynamoDB Using Java
Tired of switching accounts and regions? Use Dynobase.
Try 7-day free trial. No credit card needed.
Product Features
DynamoDB Tools
DynamoDB Info
© 2024 Dynobase