Ideal Data-Store Options for Complex Join Operations | AWS Certified Developer Exam

Ideal Data-Store Options for Complex Join Operations

Prev Question Next Question

Question

You are a developer who has been hired to lead the development of a new application.

The application needs to interact with a backend data-store.

The application also needs to perform many complex join operations.

Which of the following would be the ideal data-store option? (Select Two)

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Answer - B and C.

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud.

It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks.

Since you need complex query design, it is better to choose one of the available relational database services.

Amazon Redshift is an Internet hosting service and data warehouse product that forms part of the larger cloud-computing platform Amazon Web Services.

It is built on top of technology from the massive parallel processing data warehouse company ParAccel, to handle large scale data sets and database migrations.

Both of the options above support complex joins.

Option A is incorrect since AWS DynamoDB does not support complex joins.

Option D is incorrect since this is used for Object-level storage.

For more information on AWS RDS, please refer to the below URL-

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html

For more information on AWS Redshift-

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

Of the options provided, AWS RDS and AWS Redshift would be the ideal data-store options to consider for an application that needs to perform many complex join operations.

AWS RDS (Relational Database Service) is a managed service that provides scalable relational databases in the cloud. It supports multiple popular database engines such as MySQL, PostgreSQL, Oracle, SQL Server, and Amazon Aurora. RDS is a good option for applications that require ACID-compliant transactions, multi-AZ deployment for high availability, and read replicas for scaling read-heavy workloads. RDS is well-suited for applications that require complex join operations, as it supports SQL queries and allows for joins across multiple tables.

AWS Redshift is a fully managed data warehouse service that can handle petabyte-scale data warehouses. Redshift uses columnar storage to optimize query performance and provides a massively parallel processing architecture that can parallelize and distribute queries across multiple nodes. Redshift also integrates with popular BI tools, such as Tableau and Power BI. Redshift is a good option for applications that need to perform complex analytics queries, including join operations across multiple tables.

AWS DynamoDB is a NoSQL database service that provides fast and flexible document and key-value storage. DynamoDB is well-suited for applications that require low-latency and high-throughput data access, but it does not support SQL queries or joins across multiple tables. DynamoDB is a good option for applications that require predictable performance, auto-scaling, and seamless integration with other AWS services.

AWS S3 (Simple Storage Service) is a highly scalable and durable object storage service that can store and retrieve any amount of data. However, S3 is not a database and does not support SQL queries or join operations. S3 is a good option for storing and retrieving unstructured data, such as images, videos, and log files.

Therefore, the ideal data-store options for an application that needs to perform many complex join operations are AWS RDS and AWS Redshift.