ETExamTower
Q52Design High-Performing Architectures

A company operates its production workload on an Amazon Aurora MySQL DB cluster that has six Aurora Replicas. The company needs near-real-time reporting queries from one department to be automatically distributed across three Aurora Replicas. Those three replicas use different compute and memory specifications than the rest of the DB cluster. Which solution satisfies these requirements?

← → navigate · a answer
Community votes
A
100% (4)
B
0% (0)
C
0% (0)
D
0% (0)
Discussion · 5
A 2
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Endpoints.Custom.html A custom endpoint for an Aurora cluster represents a set of DB instances that you choose. When you connect to the endpoint, Aurora performs connection balancing and chooses one of the instances in the group to handle the connection. You define which instances this endpoint refers to, and you decide what purpose the endpoint serves.
2
custom endpoint for an Aurora cluster represents a set of DB instances that you choose. When you connect to the endpoint, Aurora performs connection balancing and chooses one of the instances in the group to handle the connection. You define which instances this endpoint refers to, and you decide what purpose the endpoint serves. An Aurora DB cluster has no custom endpoints until you create one. You can create up to five custom endpoints for each provisioned Aurora cluster or Aurora Serverless v2 cluster. You can't use custom endpoints for Aurora Serverless v1 clusters. The custom endpoint provides balanced database connections based on criteria other than the read-only or read/write capability of the DB instances.
A 2
A - You can assign the three replicas with different compute and memory specifications to the custom endpoint, ensuring that queries are distributed only among these replicas. B - Expensive, cumbersome, and unnecessary. The clone has separate storage and compute resources. C - You can't target just the three replicas you want. D - The reader endpoint automatically distributes read queries across *ALL* Aurora Replicas in the cluster.
A 1
This is why I choose Option A: Using a Custom endpoint: This allows you to specify a specific set of Aurora replicas be used for the reporting queries, enabling you to target the three replicas with different compute and memory specifications while distributing the workload across them.
1
Why the other options are not ideal: - #B. Create a three-node cluster clone and use the reader endpoint: While you can create a separate cluster, using the "reader endpoint" would distribute queries across all replicas in that cluster, not just the three you want to target with different specs. - #C. Use any of the instance endpoints for the selected three nodes: This approach would require manual connection management to each specific replica, not providing automatic load balancing across the chosen three nodes. - #D. Use the reader endpoint to automatically distribute the read-only workload: The standard "reader endpoint" distributes reads across all Aurora replicas in the cluster, not just the selected three with specific configurations.