How to delete table in dynamoDB using Java – DynamoDB Tutorial
5 years ago Lalit Bhagtani 0
In this tutorial, we will learn about how to delete a table in dynamoDB using java language.
DynamoDB
Amazon DynamoDB is a fully managed NoSQL database services offered by Amazon as part of its Amazon Web Service (AWS) portfolio. It provides fast and predictable performance with seamless scalability. DynamoDB is a key-value datastore, where each item (row) in a table is a key-value pair. The primary key is the only required attribute for an item and uniquely identifies each item. DynamoDB is schema-less, which means that each item in a table can have any number of attributes and the types of attributes can vary from item to item.
Project Setup
Create a simple maven project in your favorite IDE and add below mentioned dependency in your pom.xml file.
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.524</version>
</dependency>
For latest version of aws library, check this page.
DynamoDB Connection
Create an object of AmazonDynamoDB ( com.amazonaws.services.dynamodbv2.AmazonDynamoDB ) class for sending a client request to dynamoDB. To get instance of this class, we will use AmazonDynamoDBClientBuilder builder class. It requires three important parameters :-
- Region :- It is a region where dynamoDB table will be stored.
- ACCESS_KEY :- It is a access key for using dynamoDB. You can generate this key, using aws management console.
- SECRET_KEY :- It is a secret key of above mentioned access key.
Here is a code example :-
AmazonDynamoDB dynamoDB = AmazonDynamoDBClientBuilder.standard()
.withRegion(Regions.AP_SOUTH_1)
.withCredentials(new AWSStaticCredentialsProvider
(new BasicAWSCredentials("ACCESS_KEY","SECRET_KEY")))
.build();
Delete Table
Steps to create and send DeleteTableRequest to dynamoDB are as follows:-
- Instantiate DeleteTableRequest object, this object will be used to send the client request to dynamoDB.
- Set name of the table which we like to delete. In our case JOB.
- Invoke the deleteTable method on AmazonDynamoDB object by passing DeleteTableRequest object as an argument.
Example
import com.amazonaws.AmazonServiceException; import com.amazonaws.auth.AWSStaticCredentialsProvider; import com.amazonaws.auth.BasicAWSCredentials; import com.amazonaws.regions.Regions; import com.amazonaws.services.dynamodbv2.AmazonDynamoDB; import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder; import com.amazonaws.services.dynamodbv2.model.DeleteTableRequest; import com.amazonaws.services.dynamodbv2.model.DeleteTableResult; public class DeleteTable { public static void main(String[] args) { /* Create DynamoDB Client Object */ AmazonDynamoDB dynamoDB = AmazonDynamoDBClientBuilder .standard() .withRegion(Regions.AP_SOUTH_1) .withCredentials(new AWSStaticCredentialsProvider (new BasicAWSCredentials("ACCESS_KEY","SECRET_KEY"))) .build(); /* Create an Object of DeleteTableRequest */ DeleteTableRequest request = new DeleteTableRequest(); /* Setting Table Name */ request.setTableName("JOB"); try { /* Send Delete Table Request */ DeleteTableResult result = dynamoDB.deleteTable(request); System.out.println("Status : " + result.getSdkHttpMetadata().getHttpStatusCode()); System.out.println("Table Name : " + result.getTableDescription().getTableName()); /* Creating and Sending request with Table Name only */ result = dynamoDB.deleteTable("USER"); System.out.println("Status : " + result.getSdkHttpMetadata().getHttpStatusCode()); System.out.println("Table Name : " + result.getTableDescription().getTableName()); } catch (AmazonServiceException e) { System.out.println(e.getErrorMessage()); } } }
References :-
That’s all for how to delete a table in dynamoDB using java language. If you liked it, please share your thoughts in comments section and share it with others too.