QuickDialog: Why DynamoDB is the Right Platform for Scalability, Performance, and High Availability?

DynamoDB Benefits for QuickDialog

Question

QuickDialog is a multimedia company running a messaging app.

One of the principal features of QuickDialog is that pictures and messages are usually only available for a short time before they become inaccessible to users.

The app has evolved from originally centering on person-to-person photo sharing to present users' "Stories" of 24 hours of sequential content, along with "Discover", allowing brands show ad-supported short-form media. QuickDialog is using RDS to support their existing mobile application and are facing lot of issues in terms of scalability, performance and high availability.

They are considering DynamoDB to migrate the platform.

Please advise why do you think DynamoDB is a right platform to address QuickDialog Business needs.

Select 3 options.

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D. E.

Answer : A,B, D.

Option A is correct -DynamoDB supports both key-value and document data models.

This enables DynamoDB to have a flexible schema, so each row can have any number of columns at any point in time.

https://aws.amazon.com/dynamodb/features/

Option B is correct -DynamoDB provides two read/write capacity modes for each table: on-demand and provisioned.

For workloads that are less predictable for which you are unsure that you will have high utilization, on-demand capacity mode takes care of managing capacity for you, and you only pay for what you consume.

Tables using provisioned capacity mode require you to set read and write capacity.

https://aws.amazon.com/dynamodb/features/

Option C is incorrect -Amazon Redshift delivers fast query performance on datasets ranging in size from gigabytes to exabytes.

Redshift uses columnar storage, data compression, and zone maps to reduce the amount of I/O needed to perform queries.

It uses a massively parallel processing (MPP) data warehouse architecture to parallelize and distribute SQL operations to take advantage of all available resources.

https://aws.amazon.com/redshift/features/

Option D is correct - DynamoDB global tables replicate your data automatically across your choice of AWS Regions and automatically scale capacity to accommodate your workloads.

With global tables, your globally distributed requests can access data locally in the selected regions to get single-digit millisecond read and write performance.

Option E is incorrect -this feature is provided by Redshift.

Amazon Redshift uses machine learning to deliver high throughout based on your workloads.

Redshift utilizes sophisticated algorithms to predict incoming query run times, and assigns them to the optimal queue for the fastest processing.

https://aws.amazon.com/redshift/features/

QuickDialog is a multimedia company that requires a database that can handle a large amount of data, support high scalability, provide high availability, and is easy to manage. Based on the given scenario, DynamoDB is a suitable option for QuickDialog's business needs for the following reasons:

  1. Support for flexible schema: DynamoDB is a NoSQL database that supports key-value and document-based data models. It provides a flexible schema that allows each row to have any number of columns at any point in time, enabling businesses to add or remove columns as needed. This feature is essential for QuickDialog, as it allows them to cater to new business requirements with relative ease. For example, if they decide to introduce new features such as video sharing, they can easily add a column for video URLs without disrupting the existing schema.

  2. Two read/write capacity modes: DynamoDB provides two read/write capacity modes for each table - on-demand and provisioned. The on-demand mode automatically scales the table's capacity up or down based on traffic, ensuring that the application is always available and responsive. The provisioned mode allows businesses to allocate a specific amount of capacity to a table, ensuring predictable performance and cost.

  3. Columnar storage, data compression, and MPP architecture: DynamoDB uses columnar storage, data compression, and zone maps to reduce the amount of I/O needed to perform queries. It also uses a massively parallel processing (MPP) architecture to parallelize and distribute SQL operations to take advantage of all available resources. These features enable DynamoDB to provide fast query response times and handle large amounts of data with ease, making it an ideal choice for QuickDialog.

  4. Global replication and automatic scaling: DynamoDB can replicate data automatically across different AWS regions, making it easy to build globally distributed applications that can access data locally for single-digit millisecond read and write performance. DynamoDB can also scale capacity automatically to accommodate workloads, ensuring that the application is always available and responsive to user demands.

  5. Sophisticated query optimization: DynamoDB utilizes sophisticated algorithms to predict incoming query run times and assigns them to the optimal queue for the fastest processing. This feature ensures that queries are processed efficiently, providing fast and predictable performance.

Overall, based on the features described above, DynamoDB is a suitable option for QuickDialog's business needs as it provides a highly scalable, highly available, and easy-to-manage database solution that can handle large amounts of data with ease.