Dynamodb Interview Questions

Dynamodb Interview Questions

  • Bhavesh Joshi
  • 17th Feb, 2021

About DynamoDB

Amazon DynamoDB is a proprietary NoSQL database service that forms a part of Amazon Web Services. It supports key-value and document data structures for all its data services by using synchronous replication across multiple data centers. This gives DynamoDB high durability and availability. DynamoDB also provides its users with the advantage of Auto Scaling. When enabled, DynamoDB automatically scales the database. The base data structure used by DyanamoDb is hashing and B-tree. With the first entry, data is first distributed with the help of hashing into different partitions. The languages to which DynamoDB is bound, include Java, JavaScript, Node.js, Go, C# .NET, Perl, PHP, Python, Ruby, and many more.

Dynamodb Interview Questions

1) What is Dynamodb?

Amazon DynamoDB is a fully managed NoSQL database service that provides fast performance at any scale. It supports key-value and document data structures and is offered by Amazon.com as part of the Amazon Web Services portfolio. DynamoDB exposes a similar data model to and derives its name from Dynamo, but has a different underlying implementation.

2) Enlist major advantages of DynamoDB?

DynamoDb provides us many benefits, consistency, availability and partition tolerance. It provides facilities to easily store the graph data, which is not available to SQL.

Below are the major advantages of DynamoDB

  • Scalable: Virtual unlimited storage, users can store infinity amount of data according to their need
  • Cost Effective: It seems to be cutting costs, while a big part of data is able to migrate from SQL to NOSQL. Basically it charges for reading, writing, and storing data along with any optional features you choose to enable in DynamoDB
  • Data Replication: All data items are stored on SSDs and replication is managed internally across multiple availability zones in a region or can be made available across multiple regions.
  • Serverless: DynamoDB scales horizontally by expanding a single table over multiple servers
  • Easy Administration: Amazon DynamoDB is a fully managed service, you don't need to worry about hardware or software provisioning, setup & configuration, software patching, distributed database cluster or partitioning data over multiple instances as you scale
  • Secure: Customizable traffic filtering, Regulatory Compliance Automation, Comprehensive Database Threat Detection, Advanced System of Notification and Reporting

3) What is the secondary indexes in DynamoDB?

A secondary index is a data structure that contains a subset of attributes from a table, along with an alternate key to support Query operations. You can retrieve data from the index using a Query , in much the same way as you use Query with a table.

4) What is Partition Key?

A simple primary key, composed of one attribute known as the partition key. DynamoDB uses the partition key's value as input to an internal hash function. The output from the hash function determines the partition (physical storage internal to DynamoDB) in which the item will be stored.

5) What is an index in Dynamodb?

An index is a data structure that improves the speed of data retrieval operations on a database table at the cost of additional writes and storage space to maintain the index data structure.

DynamoDB provides fast access to items in a table by specifying primary key values. Indexing comes into the picture if you want to fetch the data of attributes other than the primary key.

6) What is DynamoDBMapper class?

DynamoDBMapper class is the entry point to Amazon DynamoDB. It provides access to a DynamoDB endpoint and enables you to access your data in various tables. It also enables you to perform various create, read, update, and delete (CRUD) operations on items, and run queries and scans against tables.

7) Does DynamoDB support SQL?

Yes, DynamoDB support SQL. SQL is the standard for storing and retrieving data.

8) What is Local DynamoDB?

Local DynamoDB is a downloadable version of DynamoDB that enables developers to develop and test applications using a version of DynamoDB running in your own development environment.

9) What is use of Scan operation in DynamoDB?

A Scan operation in Amazon DynamoDB reads every item in a table or a secondary index. By default, a Scan operation returns all of the data attributes for every item in the table or index. You can use the ProjectionExpression parameter so that Scan only returns some of the attributes, rather than all of them.

10) What kind of query functionality does DynamoDB support?

DynamoDB supports GET/PUT operations by using a user-defined primary key. The primary key is the only required attribute for items in a table. You specify the primary key when you create a table, and it uniquely identifies each item. DynamoDB also provides flexible querying by letting you query on nonprimary key attributes using global secondary indexes and local secondary indexes.

11) What are DynamoDB streams?

DynamoDB Streams is a powerful service that you can combine with other AWS services to solve many similar problems. If we enable DynamoDB Streams then it captures a time-ordered sequence of item-level modifications in a DynamoDB table and durably stores the information for up to 24 hours.

12) What is Eventual Consistency?

According to Wikipedia, Eventual consistency is a consistency model used in distributed computing to achieve high availability that informally guarantees that, if no new updates are made to a given data item, eventually all accesses to that item will return the last updated value.

13) What is burst balance in RDS?

The burst balance relates to disk usage on your RDS instance. This assume you're using a GP2 volume which is bustable (it has credits that can be depleted too). Just like burstable instance classes ( T2 / T3 ) GP2 has a balance of available credits in which its IOPs can reach upto 3000 PIOPs.

14) What is the DynamoDB max item size?

400 KB is maximum item size in DynamoDB , which includes both attribute name binary length (UTF-8 length) and attribute value lengths (again binary length). The attribute name counts towards the size limit.

15) What is sort key in Dynamodb?

A sort key is a field in your table that determines the order in which the data is physically stored in the database.

The sort key of an item is also known as its range attribute. The term range attribute derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

Leave A Comment :

Valid name is required.

Valid name is required.

Valid email id is required.