Question

Difficulty: MediumDatabase and Storage Strategy

A financial technology company is designing a new transaction processing platform. The application requires a relational OLTP database with automatic scaling of read capacity to handle traffic spikes. The platform must also store monthly transaction reports in an Amazon S3 bucket, which must be shared with a separate auditing AWS account. The reports must be encrypted at rest, and the auditing account must have direct access to decrypt them. The disaster recovery requirements specify a recovery time objective (RTO) of less than 1 minute and a recovery point objective (RPO) of less than 1 second across two AWS regions. Which combination of AWS database and storage strategies meets these requirements?

  1. A
    Deploy Amazon RDS for PostgreSQL with a Multi-AZ deployment. Configure the application to route read spikes to the secondary standby instance in the secondary Availability Zone. Store transaction reports in Amazon S3, encrypted with a Customer Managed KMS key, and configure the key policy to allow cross-account access for the auditing account.
  2. B
    Deploy Amazon Aurora Global Database with Aurora Auto Scaling for the read replicas to handle read spikes. Store transaction reports in Amazon S3, encrypted with the default AWS managed KMS key (aws/s3), and configure the S3 bucket policy to allow access to the auditing account.
  3. Deploy Amazon Aurora Global Database with Aurora Auto Scaling for the read replicas to handle read spikes. Store transaction reports in Amazon S3, encrypted with a Customer Managed KMS key, and configure the key policy to allow cross-account access for the auditing account.Answer
  4. D
    Deploy Amazon Aurora PostgreSQL in a single region with Aurora Auto Scaling. Configure daily snapshot replication to the secondary region, and write a script to restore the database in the secondary region in the event of a disaster. Store transaction reports in Amazon S3, encrypted with a Customer Managed KMS key, and configure the key policy to allow cross-account access for the auditing account.

Answer

Deploy Amazon Aurora Global Database with Aurora Auto Scaling for the read replicas to handle read spikes. Store transaction reports in Amazon S3, encrypted with a Customer Managed KMS key, and configure the key policy to allow cross-account access for the auditing account.
The correct strategy uses Amazon Aurora Global Database to achieve the required sub-second recovery point objective (RPO) and low recovery time objective (RTO). It also utilizes Aurora Auto Scaling to dynamically provision read replicas to handle traffic spikes. For storage, it uses a Customer Managed Key (CMK) on the S3 bucket to allow direct cross-account access and decryption for the auditing account.

Step-by-Step Solution

1
Evaluate the database replication strategy for multi-region disaster recovery.
Amazon Aurora Global Database is selected because it provides sub-second data replication (meeting the RPO of less than 1 second) and automatic failover across regions (meeting the RTO of less than 1 minute).
Traditional snapshot copy strategies fail to meet the sub-second recovery point objective.
2
Evaluate the database scaling strategy for read spikes.
Aurora Auto Scaling is configured to adjust the number of Aurora Replicas based on CPU utilization or connection count.
RDS standby instances in a standard Multi-AZ deployment are passive and cannot be used to scale read traffic.
3
Evaluate the cross-account S3 object decryption strategy.
Encrypted reports in S3 must use a Customer Managed Key (CMK) in AWS KMS with a custom key policy granting decrypt permissions to the auditing AWS account.
AWS-managed KMS keys do not support policy modification and cannot be shared across multiple AWS accounts.

Key Concept

Multi-region disaster recovery, database read-scaling, and cross-account access to encrypted storage.
Estimated Time:2m 0s
Rate this question