Soru

Zorluk: ZorDatabase and Storage Strategy

A media streaming platform is designing a new video-on-demand application. The application requires a database and storage strategy for two distinct workloads:

1. User session state: A NoSQL workload requiring sub-1010 millisecond latency for both reads and writes, scaling up to 150,000150,000 writes per second during peak hours.
2. Catalog metadata: A highly relational OLTP workload that experiences unpredictable spikes in read traffic. The solution must support horizontal read scaling with minimal replica lag, support cross-account key management and rotation policies for at-rest encryption, and replicate data to a secondary AWS Region to achieve a disaster recovery Recovery Time Objective (RTO) of 55 minutes and a Recovery Point Objective (RPO) of 11 minute.

Which database and storage architecture should the solutions architect recommend to satisfy these requirements?

  1. Store user session states in Amazon DynamoDB. Store catalog metadata in an Amazon Aurora PostgreSQL Global Database encrypted with a Customer Managed Key (CMK). Configure Aurora Auto Scaling to dynamically adjust the number of Aurora Replicas based on demand, and utilize the global database for cross-region replication.Cevap
  2. B
    Store user session states in Amazon DynamoDB. Store catalog metadata in Amazon RDS for PostgreSQL with a Multi-AZ deployment encrypted with a Customer Managed Key (CMK). Direct read traffic spikes to the Multi-AZ standby instance, and configure cross-region read replicas to achieve the disaster recovery objectives.
  3. C
    Store user session states in Amazon DynamoDB. Store catalog metadata in an Amazon Aurora PostgreSQL Global Database encrypted with the AWS-managed KMS key (aws/rds). Configure Aurora Auto Scaling to dynamically adjust the number of Aurora Replicas, and use Aurora Global Database to replicate data to the secondary region.
  4. D
    Store user session states in Amazon DynamoDB. Store catalog metadata in a single-region Amazon Aurora PostgreSQL database encrypted with a Customer Managed Key (CMK). Configure Aurora Auto Scaling for read replicas, and copy hourly DB snapshots to the secondary region to support disaster recovery.

Cevap

Store user session states in Amazon DynamoDB. Store catalog metadata in an Amazon Aurora PostgreSQL Global Database encrypted with a Customer Managed Key (CMK). Configure Aurora Auto Scaling to dynamically adjust the number of Aurora Replicas based on demand, and utilize the global database for cross-region replication.
The correct architecture leverages Amazon DynamoDB to handle the high-throughput, low-latency session store, as it scales horizontally to handle 150,000150,000 writes per second. For the catalog metadata, Amazon Aurora PostgreSQL Global Database provides multi-region replication with replication lag typically under 11 second, satisfying the 11-minute RPO and 55-minute RTO. Aurora Auto Scaling dynamically manages Aurora Replicas to handle read spikes. Using a Customer Managed Key (CMK) allows for cross-account KMS key policies and rotation management, which is required for security compliance.

Adım Adım Çözüm

1
Identify the storage requirements for the NoSQL user session state.
Determine that Amazon DynamoDB is the appropriate service to support sub-1010 millisecond latency at 150,000150,000 writes per second.
DynamoDB is fully managed, scales horizontally to virtually unlimited write throughput, and consistently delivers single-digit millisecond latency.
2
Determine the scaling and high availability requirements for the catalog metadata workload.
Identify that Amazon Aurora PostgreSQL Global Database supports horizontal scaling with Aurora Replicas and cross-region replication.
Aurora Replicas support auto-scaling to handle read spikes with sub-millisecond replication lag, and Aurora Global Database achieves cross-region disaster recovery with near-zero RPO and RTO under 55 minutes.
3
Evaluate the encryption and key management compliance requirements.
Identify that a KMS Customer Managed Key (CMK) is required instead of an AWS-managed key.
AWS-managed keys (e.g., `aws/rds`) cannot have their key policies modified and cannot be shared across accounts, whereas CMKs support custom cross-account permissions and management.

Anahtar Kavram

Selecting and configuring optimal AWS database and encryption services to meet strict performance, scaling, cross-account security, and multi-region disaster recovery requirements.
Bu soruyu puanla