A company is migrating a business intelligence (BI) application to AWS. The application runs complex analytical queries, including multi-table joins and aggregations, on a relational database containing historical sales data. The BI analysts run reports throughout the day, and they require query results in less than seconds. The database is updated once per day during a nightly batch loading process. Which database solution should a solutions architect recommend to meet these performance requirements?
- An Amazon Redshift cluster with distribution keys and sort keys optimized for the common query patterns.Answer
- BAn Amazon RDS for PostgreSQL DB instance with a Multi-AZ deployment, routing the analytical queries to read replicas that are configured to serve as primary failover targets.
- CAn Amazon DynamoDB table with DynamoDB Accelerator (DAX) configured, using a monotonically increasing timestamp as the partition key.
- DAn Amazon DynamoDB table configured in Provisioned Capacity Mode, using the sales date timestamp as the partition key and performing client-side joins.
Answer
An Amazon Redshift cluster with distribution keys and sort keys optimized for the common query patterns.
The correct option is the Amazon Redshift cluster configuration. Amazon Redshift is a columnar data warehouse optimized for online analytical processing (OLAP) that can efficiently perform complex joins and aggregations on a dataset in under seconds. By defining appropriate distribution and sort keys, data movement between compute nodes is minimized, and query performance is maximized.
Step-by-Step Solution
Key Concept
Selecting and configuring the optimal AWS database service based on workload patterns (OLAP vs. OLTP) to achieve high performance at scale.