A financial technology company is designing a new international transaction processing system (OLTP workload). The system must meet the following requirements:
* The transactional database must handle high-volume write traffic, support complex relational queries, and maintain a recovery point objective (RPO) of less than 1 second and a recovery time objective (RTO) of less than 1 minute across two AWS regions.
* The database must scale read capacity dynamically to handle regional analytics queries based on CPU utilization.
* Transaction receipts must be archived to an Amazon S3 bucket in a separate auditing AWS account. The archived data must be encrypted at rest, and the application in the primary account must write directly to this bucket using cross-account encryption key delegation.
Which database and storage strategy meets these requirements?
- Deploy an Amazon Aurora PostgreSQL Global Database with a primary cluster in the primary region and a secondary cluster in the secondary region. Configure Aurora Auto Scaling to scale reader instances within the database clusters. Configure the transaction receipts to be written to the auditing account's Amazon S3 bucket, encrypted using a Customer Managed Key (CMK) in the auditing account with key policy and bucket policy permissions delegated to the primary account's IAM role.Cevap
- BDeploy an Amazon RDS for PostgreSQL Multi-AZ DB instance in the primary region, with an RDS Read Replica in the secondary region. Route regional analytics queries to the standby DB instance of the Multi-AZ deployment to scale read capacity. Archive receipts to the auditing account's S3 bucket, encrypted using a Customer Managed Key (CMK) in the auditing account with cross-account key and bucket policy permissions.
- CDeploy an Amazon Aurora PostgreSQL DB cluster in the primary region. Configure Aurora Auto Scaling for the reader instances. Set up hourly snapshots of the cluster using AWS Backup, replicate the snapshots to the secondary region, and restore them using AWS CloudFormation in the event of a disaster. Archive receipts to the auditing account's S3 bucket, encrypted using a Customer Managed Key (CMK) in the auditing account with cross-account key and bucket policy permissions.
- DDeploy an Amazon Aurora PostgreSQL Global Database with a primary cluster in the primary region and a secondary cluster in the secondary region. Configure Aurora Auto Scaling to scale reader instances. Archive receipts to the auditing account's S3 bucket, encrypted using the AWS-managed KMS key for Amazon S3 (aws/s3) in the auditing account, and configure the bucket policy to grant write access to the primary account's IAM role.