Courseiva

CCNA Db Design Questions

75 of 423 questions · Page 3/6 · Db Design topic · Answers revealed

151
MCQmedium

A company wants to run a MongoDB-compatible database on AWS with automated patching and backups. Which service should they choose?

A.Amazon DocumentDB (with MongoDB compatibility)
B.Self-managed MongoDB on Amazon EC2
C.Amazon DynamoDB
D.Amazon RDS for MySQL
AnswerA

Fully managed MongoDB-compatible database.

Why this answer

Amazon DocumentDB with MongoDB compatibility is the correct choice because it is a fully managed, MongoDB-compatible database service that provides automated patching and backups. It supports the MongoDB wire protocol and drivers, allowing existing MongoDB applications to migrate with minimal changes while offloading administrative tasks like patching, backup, and replication to AWS.

Exam trap

The trap here is that candidates may confuse Amazon DocumentDB's MongoDB compatibility with full feature parity, but DocumentDB does not support all MongoDB features (e.g., some aggregation pipeline stages or change streams), so the exam expects you to recognize it as the only managed MongoDB-compatible option with automated patching and backups.

How to eliminate wrong answers

Option B is wrong because self-managed MongoDB on Amazon EC2 requires the company to manually handle patching, backups, and operational overhead, which contradicts the requirement for automated patching and backups. Option C is wrong because Amazon DynamoDB is a key-value and document database that is not MongoDB-compatible; it uses a different API and data model, so it cannot run MongoDB workloads. Option D is wrong because Amazon RDS for MySQL is a relational database that does not support the MongoDB wire protocol or document model, making it incompatible with MongoDB-based applications.

152
Multi-Selectmedium

Which THREE considerations are important when designing a database for a global, multi-Region application using Amazon DynamoDB Global Tables? (Select THREE.)

Select 3 answers
A.Using a single write region to avoid conflicts
B.Strongly consistent reads across regions
C.Application tolerance for eventually consistent reads
D.Provisioning sufficient write capacity in each region
E.Conflict resolution using last writer wins
AnswersC, D, E

Cross-region replication is asynchronous; reads may be eventually consistent.

Why this answer

Amazon DynamoDB Global Tables use an eventually consistent model for cross-region replication. Applications must tolerate eventual consistency, as updates made in one region are propagated to other regions asynchronously, typically within one second or less. This design trade-off enables high availability and low-latency writes across multiple regions.

Exam trap

The DBS-C01 exam often tests the misconception that Global Tables require a single write region or support cross-region strongly consistent reads, when in fact they are designed for multi-region writes with eventual consistency and automatic conflict resolution via last writer wins.

153
MCQeasy

A company needs to store and query JSON documents that have varying attributes. The workload is read-heavy, and the team wants to use SQL-like queries. Which service is most appropriate?

A.Amazon Neptune
B.Amazon DocumentDB (with MongoDB compatibility)
C.Amazon DynamoDB with PartiQL
D.Amazon RDS for MySQL with JSON data type
AnswerB

DocumentDB is a document database that natively stores JSON and supports MongoDB queries.

Why this answer

Amazon DocumentDB (with MongoDB compatibility) is the most appropriate service because it is purpose-built for storing and querying JSON documents with varying attributes, and it supports SQL-like queries via MongoDB's query language, which is familiar to developers. As a read-heavy workload, DocumentDB's architecture with distributed storage and read replicas provides high throughput and low latency for such patterns. The flexible schema of DocumentDB naturally handles documents with differing attributes without requiring schema migrations.

Exam trap

The trap here is that candidates often choose DynamoDB with PartiQL because it supports SQL-like queries and JSON, but they overlook that DocumentDB is specifically designed for document workloads with flexible schemas and richer query capabilities, while DynamoDB is optimized for key-value access patterns and requires careful design for varying attributes.

How to eliminate wrong answers

Option A is wrong because Amazon Neptune is a graph database designed for highly connected data (e.g., social networks, recommendation engines), not for storing and querying JSON documents with varying attributes using SQL-like queries. Option C is wrong because Amazon DynamoDB with PartiQL is a NoSQL key-value and document database that supports SQL-compatible queries, but it is optimized for high-scale, low-latency workloads with a fixed primary key schema; while it can store JSON, it does not natively support rich querying on varying attributes without secondary indexes and is less suited for complex SQL-like joins or aggregations compared to a document database. Option D is wrong because Amazon RDS for MySQL with JSON data type requires a fixed relational schema for the table structure, and while it can store JSON in a column, it does not provide the flexible schema or native document querying capabilities that DocumentDB offers; querying varying attributes often involves complex JSON functions and can lead to performance issues in read-heavy workloads.

154
MCQmedium

A company runs a MySQL database on Amazon RDS. They need to export a subset of data to Amazon S3 for analysis using Amazon Athena. The data is stored in multiple tables with complex joins. What is the MOST efficient way to export the data?

A.Use the COPY command from Amazon Redshift to pull data from RDS.
B.Use the SELECT INTO OUTFILE S3 extension to export the query results directly to S3.
C.Use the AWS Schema Conversion Tool (SCT) to extract the data to S3.
D.Use mysqldump to export the tables and then upload the files to S3.
AnswerB

This RDS feature allows exporting arbitrary SQL query results to S3.

Why this answer

Amazon RDS for MySQL supports the `SELECT INTO OUTFILE S3` extension, which allows you to export the results of complex queries (including joins) directly to Amazon S3 in a single, efficient operation. This avoids the overhead of intermediate staging or manual file transfers, making it the most efficient method for exporting a subset of data to S3 for Athena analysis.

Exam trap

The trap here is that candidates often confuse the AWS Schema Conversion Tool (SCT) as a data extraction tool, when it is actually designed for schema assessment and conversion, not for efficient query-based data export to S3.

How to eliminate wrong answers

Option A is wrong because the COPY command is an Amazon Redshift feature for loading data into Redshift, not for exporting from RDS; it cannot pull data from RDS directly. Option C is wrong because the AWS Schema Conversion Tool (SCT) is designed for schema conversion and heterogeneous database migrations, not for efficient ad-hoc data export of query results to S3. Option D is wrong because mysqldump exports entire tables or databases in a serialized format (SQL or delimited text) that requires manual upload to S3, and it cannot handle complex joins or subsetting efficiently, making it far less efficient than the native S3 export extension.

155
MCQmedium

A company uses Amazon DynamoDB for a time-series IoT workload. Each device sends a data point every minute. The primary key consists of device_id (partition key) and timestamp (sort key). The company wants to efficiently retrieve the latest 10 data points for a specific device. Which query design is most efficient?

A.Use GetItem on the device_id partition key with the maximum timestamp.
B.Query the table with ScanIndexForward=true and Limit=10, then reverse the result set.
C.Query the table with ScanIndexForward=false and Limit=10.
D.Scan the entire table and filter by device_id, then sort by timestamp.
AnswerC

This returns the most recent 10 items in descending order by timestamp.

Why this answer

Query with ScanIndexForward=false retrieves items in descending order by the sort key (timestamp), and Limit=10 stops after the first 10 items, which are the most recent 10 data points for the given device_id. This is the most efficient design as it reads only the 10 items needed, leveraging the DynamoDB local secondary index or table's sort key order without any post-processing.

Exam trap

The trap here is that candidates may confuse ScanIndexForward=true with 'latest' results, or incorrectly assume GetItem can retrieve the maximum sort key without knowing its value, leading them to choose inefficient options like scanning or reversing an ascending query.

How to eliminate wrong answers

Option A is wrong because GetItem requires both partition key and sort key; using only device_id with a maximum timestamp is not a valid operation—GetItem cannot compute a max value, and you would need to know the exact timestamp. Option B is wrong because ScanIndexForward=true retrieves items in ascending order (oldest first), so with Limit=10 you get the oldest 10 items, not the latest; reversing the result set still gives the oldest 10, not the newest. Option D is wrong because Scan reads the entire table, which is inefficient and costly for large datasets, and filtering by device_id after scanning defeats the purpose of using DynamoDB's indexed access.

156
MCQeasy

A company is using Amazon ElastiCache for Redis as a caching layer for frequently accessed data. The application needs to support caching of session data that must be highly available across multiple Availability Zones. Which ElastiCache configuration should be used?

A.Deploy a single Redis node in one Availability Zone.
B.Deploy a Redis cluster with cluster mode disabled.
C.Deploy a Memcached cluster with multiple nodes.
D.Deploy a Redis cluster with cluster mode enabled and replica nodes in a different Availability Zone.
AnswerD

Cluster mode with replicas across AZs provides high availability and automatic failover.

Why this answer

Deploying a Redis cluster with cluster mode enabled and replica nodes in a different Availability Zone provides both high availability and automatic failover for session data. ElastiCache for Redis with cluster mode enabled supports sharding and replication, allowing replica nodes to be placed in a separate AZ to survive an AZ failure. This configuration ensures session data remains accessible even if the primary node or an entire AZ becomes unavailable, meeting the requirement for multi-AZ high availability.

Exam trap

The trap here is that candidates often confuse cluster mode enabled/disabled with multi-AZ support, mistakenly thinking that cluster mode disabled cannot place replicas in different AZs, when in fact both modes support multi-AZ replication, but the question's requirement for 'highly available across multiple Availability Zones' and the specific wording of the correct answer point to cluster mode enabled as the intended solution for a Redis cluster that can scale and survive AZ failures.

How to eliminate wrong answers

Option A is wrong because a single Redis node in one AZ provides no redundancy; if the node or AZ fails, all session data is lost and the application becomes unavailable. Option B is wrong because a Redis cluster with cluster mode disabled (i.e., a single shard with replicas) can provide multi-AZ replication, but the question specifies 'cluster mode enabled' is required for the configuration that explicitly supports sharding and scaling; however, the core issue is that cluster mode disabled still allows replicas in different AZs, but the exam trap is that candidates may think cluster mode disabled cannot achieve multi-AZ HA—actually it can, but the question's correct answer explicitly requires cluster mode enabled for the described scenario, and the other options are clearly wrong. Option C is wrong because Memcached does not support replication or persistence; it is a pure caching engine with no built-in high availability or failover, so it cannot guarantee session data durability across AZ failures.

157
MCQeasy

A company uses Amazon DynamoDB for a gaming application that stores player data. The application frequently accesses items by the player's user ID. However, the company also needs to query players by their subscription tier (Gold, Silver, Bronze) and registration date. Which design should the database specialist recommend for this access pattern?

A.Export the data to Amazon Elasticsearch Service for querying.
B.Create a Local Secondary Index (LSI) on subscription tier and registration date.
C.Enable DynamoDB Streams and process the stream to populate a separate table.
D.Create a Global Secondary Index (GSI) on subscription tier and registration date.
AnswerD

A GSI allows querying on different attributes with its own partition and sort keys.

Why this answer

A Global Secondary Index (GSI) on subscription tier and registration date is the correct choice because it allows efficient querying on non-primary key attributes without affecting the base table's primary key structure. DynamoDB GSIs support eventually consistent reads and can be created on any table, enabling the required access pattern of querying players by subscription tier and registration date while maintaining the primary access pattern by user ID.

Exam trap

The DBS-C01 exam often tests the distinction between LSI and GSI, where candidates mistakenly choose LSI because they think it's the only index that can include multiple attributes, but they forget that LSI shares the base table's partition key and cannot be added after table creation.

How to eliminate wrong answers

Option A is wrong because exporting data to Amazon Elasticsearch Service introduces unnecessary complexity, latency, and cost for a simple query pattern that DynamoDB can handle natively with an index. Option B is wrong because a Local Secondary Index (LSI) can only be created at table creation time and shares the same partition key as the base table, which would not allow efficient querying by subscription tier and registration date as a composite sort key across all partitions. Option C is wrong because enabling DynamoDB Streams and populating a separate table adds operational overhead and eventual consistency delays without providing the direct query capability that a GSI offers.

158
MCQeasy

A company wants to store and analyze time-series sensor data from millions of IoT devices. The data is append-only and rarely updated. Queries aggregate data over time ranges. Which AWS database service is most cost-effective and performant for this workload?

A.Amazon DynamoDB with time-series design pattern
B.Amazon Timestream
C.Amazon Redshift
D.Amazon RDS for MySQL with partitioning by date
AnswerB

Amazon Timestream is a fast, scalable, fully managed time-series database service.

Why this answer

Amazon Timestream is purpose-built for time-series data, offering automatic tiered storage (in-memory for recent data and magnetic for historical data) and optimized query performance for time-range aggregations. Its serverless architecture eliminates provisioning overhead, making it the most cost-effective and performant choice for append-only IoT sensor data with infrequent updates.

Exam trap

The trap here is that candidates often choose DynamoDB due to its familiarity and scalability, overlooking that Timestream is purpose-built for time-series workloads and offers automatic tiered storage and optimized query performance, which DynamoDB lacks without significant custom engineering.

How to eliminate wrong answers

Option A is wrong because DynamoDB with a time-series design pattern requires manual sharding, TTL management, and lacks native time-series query optimizations, leading to higher complexity and cost for large-scale append-only workloads. Option C is wrong because Amazon Redshift is a columnar data warehouse designed for complex analytical queries on structured data, not for high-ingest, append-only time-series data; its minimum cluster size and provisioning overhead make it less cost-effective for this use case. Option D is wrong because Amazon RDS for MySQL with partitioning by date incurs significant storage and I/O overhead for high-frequency inserts, lacks automatic tiered storage, and requires manual maintenance of partitions, making it less performant and more expensive than a purpose-built time-series database.

159
MCQmedium

A company is designing a relational database for an e-commerce application that requires high availability and automated failover across AWS Regions. Which AWS database service should they use?

A.Amazon DynamoDB Global Tables
B.Amazon RDS with Multi-AZ deployment
C.Amazon Aurora Global Database
D.Amazon Redshift with cross-Region snapshot copy
AnswerC

Supports cross-Region replication and failover.

Why this answer

Amazon Aurora Global Database is the correct choice because it is designed for cross-Region disaster recovery and high availability, replicating data with a typical latency of under one second across multiple AWS Regions. It supports automated failover from the primary Region to one of the secondary Regions, meeting the requirement for automated cross-Region failover without manual intervention.

Exam trap

The trap here is that candidates often confuse Multi-AZ deployments (which are Region-specific) with cross-Region failover, or they mistakenly think DynamoDB Global Tables is relational, but the question's requirement for a relational database eliminates that option.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB Global Tables is a NoSQL database, not a relational database, and the question explicitly requires a relational database. Option B is wrong because Amazon RDS with Multi-AZ deployment only provides high availability within a single AWS Region (across Availability Zones), not automated failover across Regions. Option D is wrong because Amazon Redshift with cross-Region snapshot copy is a data warehouse solution, not a relational database designed for transactional e-commerce workloads, and its cross-Region copy is manual or scheduled, not automated failover.

160
MCQhard

Refer to the exhibit. An IAM policy is attached to a role used by an application that accesses the DynamoDB 'Orders' table. The application needs to perform a Scan operation on the table. According to the policy, is the Scan operation allowed?

A.Yes, but only if the scan uses a filter expression
B.No, because the Deny statement blocks all actions
C.Yes, because the policy explicitly allows Scan
D.No, because the policy does not specify a condition
AnswerC

The Allow statement includes 'Scan', so it is permitted.

Why this answer

The IAM policy includes an explicit Allow statement for the `dynamodb:Scan` action on the `Orders` table. In IAM policy evaluation logic, an explicit Allow overrides any default implicit Deny, and the Deny statement in the policy only blocks actions that match its `NotAction` element, which does not include Scan. Therefore, the Scan operation is allowed.

Exam trap

The trap here is that candidates misread the Deny statement's `NotAction` as a blanket denial of all actions, when in fact it only denies actions not explicitly listed, allowing the explicit Allow for Scan to take effect.

How to eliminate wrong answers

Option A is wrong because the policy does not require a filter expression for Scan; filter expressions are optional and do not affect IAM authorization. Option B is wrong because the Deny statement uses `NotAction` to block all actions except those listed (like `dynamodb:GetItem`), but `dynamodb:Scan` is not listed in the Deny's `NotAction`, so it is not blocked. Option D is wrong because IAM policies do not require a condition element for an action to be allowed; conditions are optional and only refine permissions.

161
MCQeasy

A company wants to run a graph database for a social network application. The data model involves users, posts, comments, and likes, with many-to-many relationships. Which AWS database service is most appropriate?

A.Amazon RDS for PostgreSQL
B.Amazon Neptune
C.Amazon DocumentDB
D.Amazon DynamoDB
AnswerB

Neptune is purpose-built for graph databases and efficiently handles complex relationships.

Why this answer

Amazon Neptune is purpose-built for highly connected data, supporting property graph and RDF models with SPARQL and Gremlin/TinkerPop query languages. For a social network with users, posts, comments, and likes forming many-to-many relationships, Neptune efficiently traverses these connections using graph traversal algorithms, avoiding the expensive JOINs or denormalization required by other database types.

Exam trap

The trap here is that candidates often choose Amazon DynamoDB for its scalability, overlooking that graph traversal queries require multiple round-trips or inefficient scan operations, whereas Neptune provides native graph traversal with single-query efficiency.

How to eliminate wrong answers

Option A is wrong because Amazon RDS for PostgreSQL is a relational database that would require complex JOINs across multiple tables (users, posts, comments, likes) to traverse many-to-many relationships, leading to poor performance as the social graph grows. Option C is wrong because Amazon DocumentDB is a document database optimized for JSON-like documents and does not natively support graph traversal queries or relationship traversal without application-level joins. Option D is wrong because Amazon DynamoDB is a key-value and document database that lacks native graph traversal capabilities; modeling many-to-many relationships would require manual denormalization, adjacency lists, or multiple queries with application-side logic, which is inefficient for deep relationship queries.

162
MCQhard

A financial services company uses Amazon RDS for MySQL to store transaction data. The database has a single table 'transactions' with 500 million rows. The table has an auto-increment primary key and an index on 'transaction_date'. The company runs a monthly report that aggregates transactions by account_id and transaction_date. The report query uses a GROUP BY on account_id and transaction_date, and scans the entire table. The query takes over 2 hours to complete and often times out. The DBA suggests creating a materialized view. However, the company wants to minimize operational overhead. Which solution meets the requirements with the LEAST operational overhead?

A.Increase the RDS instance size to the largest available to improve performance.
B.Migrate the reporting workload to Amazon Redshift by loading the transactions table into Redshift and running the report query there.
C.Create a materialized view in MySQL that pre-aggregates the data and refreshes it nightly.
D.Add a composite index on (account_id, transaction_date) to speed up the GROUP BY.
AnswerB

Redshift is optimized for analytical queries and can handle large aggregations efficiently with minimal operational overhead.

Why this answer

Amazon Redshift is purpose-built for large-scale analytical queries. By migrating the reporting workload to Redshift, the company offloads the heavy aggregation from the transactional RDS instance to a columnar storage engine that can scan and aggregate 500 million rows efficiently using massively parallel processing (MPP). This approach requires no changes to the existing RDS database and minimizes operational overhead compared to managing a materialized view or manual indexing.

Exam trap

The trap here is that candidates often assume a larger instance or a composite index can fix any performance issue, but the DBS-C01 exam tests the understanding that analytical workloads require a different engine (Redshift) and that operational overhead includes ongoing maintenance, not just initial setup.

How to eliminate wrong answers

Option A is wrong because simply increasing the RDS instance size does not address the fundamental architectural limitation: MySQL is optimized for OLTP, not for full-table scans and large aggregations; the query will still be I/O and CPU-bound, and scaling vertically has a hard ceiling and high cost. Option C is wrong because creating a materialized view in MySQL adds significant operational overhead—it requires custom refresh logic, storage management, and risks data staleness, contradicting the requirement to minimize overhead. Option D is wrong because adding a composite index on (account_id, transaction_date) will not help a query that scans the entire table with a GROUP BY; the optimizer will likely ignore the index for a full scan, and even if used, it cannot avoid reading all rows for aggregation.

163
Multi-Selecthard

Which THREE factors should be considered when designing a database for a high-traffic web application that requires low-latency reads and writes?

Select 3 answers
A.Caching layer
B.Partitioning strategy
C.Strict normalization
D.Connection pooling
E.Denormalization of data
AnswersA, B, D

Caching reduces database load and latency.

Why this answer

A caching layer (e.g., Amazon ElastiCache for Redis or Memcached) reduces read latency by serving frequently accessed data from in-memory stores, offloading the primary database. For high-traffic web applications, this minimizes disk I/O and improves response times for both reads and writes when combined with write-through or write-behind strategies.

Exam trap

The trap here is that candidates may confuse denormalization as a mandatory design choice for low-latency reads, when in fact it is a trade-off that can complicate writes and is not a core factor for both low-latency reads and writes in a high-traffic web application.

164
MCQhard

A company uses Amazon RDS for MySQL with a Multi-AZ deployment. During a recent failover, the application experienced a 2-minute downtime because it was connecting to the primary instance endpoint. The company needs to reduce failover downtime to under 30 seconds. What should be done?

A.Implement Amazon ElastiCache to cache database connections.
B.Use the Multi-AZ DB cluster endpoint instead of the instance endpoint.
C.Increase the instance size to improve failover speed.
D.Deploy a read replica and promote it manually during failover.
AnswerB

Cluster endpoint automatically redirects to the new primary after failover.

Why this answer

The Multi-AZ DB cluster endpoint provides a single DNS name that automatically routes connections to the current writer instance, eliminating the need for application-side reconnection logic. During a failover, the endpoint updates its DNS record to point to the new primary within seconds, reducing downtime to under 30 seconds. This is the recommended approach for minimizing failover disruption in Multi-AZ deployments.

Exam trap

The trap here is that candidates assume increasing instance size or using read replicas will speed up failover, but the real bottleneck is DNS propagation and the lack of an automatic redirect for the instance endpoint, which the cluster endpoint specifically addresses.

How to eliminate wrong answers

Option A is wrong because ElastiCache caches query results or session data, not database connections; it does not reduce failover downtime for the database itself. Option C is wrong because increasing instance size improves performance but does not affect the failover process timing, which is governed by DNS propagation and replication lag, not compute capacity. Option D is wrong because promoting a read replica manually requires application reconfiguration and typically takes longer than 30 seconds due to DNS changes and manual intervention, defeating the goal of automated fast failover.

165
MCQeasy

A startup is building a social media application that requires storing user profiles, posts, comments, and likes. The workload has variable traffic, with spikes after marketing campaigns. The team expects to run complex JOIN queries to generate a user's feed. Which AWS database service is MOST suitable for this relational workload?

A.Amazon Neptune
B.Amazon RDS for PostgreSQL
C.Amazon DynamoDB with global secondary indexes
D.Amazon ElastiCache for Redis
AnswerB

RDS PostgreSQL offers full relational capabilities and managed scaling.

Why this answer

Amazon RDS for PostgreSQL is the most suitable choice because the workload requires complex JOIN queries on relational data (user profiles, posts, comments, likes). PostgreSQL provides full SQL support, ACID compliance, and robust indexing capabilities (e.g., B-tree, GiST, GIN) that efficiently handle multi-table joins. RDS also offers managed scaling, automated backups, and read replicas to accommodate traffic spikes after marketing campaigns.

Exam trap

The trap here is that candidates often choose DynamoDB for its scalability and low latency, overlooking that complex JOINs are not supported in NoSQL databases, making RDS PostgreSQL the correct choice for relational workloads requiring SQL JOIN operations.

How to eliminate wrong answers

Option A is wrong because Amazon Neptune is a graph database optimized for highly connected data (e.g., social graphs, recommendation engines) and does not support SQL JOINs or relational schema design; it uses Gremlin or SPARQL query languages. Option C is wrong because Amazon DynamoDB is a NoSQL key-value and document database that lacks native JOIN operations; while global secondary indexes improve query flexibility, they cannot replace the relational JOIN logic required for generating a user's feed. Option D is wrong because Amazon ElastiCache for Redis is an in-memory caching layer, not a primary database; it does not support complex JOIN queries or provide durable, relational storage.

166
MCQeasy

A company needs to store session state for a web application that runs on Amazon EC2 instances behind an Application Load Balancer. The session data is small (less than 1 KB per user) and must be highly available with low latency. Which AWS database service is best for this use case?

A.Amazon S3
B.Amazon ElastiCache for Redis
C.Amazon DynamoDB
D.Amazon RDS for MySQL
AnswerB

In-memory storage with low latency and high availability.

Why this answer

Amazon ElastiCache for Redis is the best choice because it provides an in-memory data store with sub-millisecond latency, ideal for storing small session state data (less than 1 KB per user). Redis supports key-value operations with built-in data expiration (TTL), making it perfect for session management. Its replication and automatic failover capabilities ensure high availability, meeting the application's requirements.

Exam trap

The trap here is that candidates often choose DynamoDB (Option C) because it is a managed NoSQL database with low latency, but they overlook that for sub-millisecond session state, an in-memory cache like Redis is more performant and cost-effective, as DynamoDB's latency is higher and its pricing model is less efficient for very small, high-throughput workloads.

How to eliminate wrong answers

Option A is wrong because Amazon S3 is an object storage service designed for large, static objects with higher latency (typically tens to hundreds of milliseconds), not suitable for low-latency session state access. Option C is wrong because Amazon DynamoDB is a NoSQL database that offers single-digit millisecond latency, but it is a disk-based service with higher overhead for very small, frequently accessed session data compared to an in-memory cache like Redis. Option D is wrong because Amazon RDS for MySQL is a relational database with ACID transactions and disk-based storage, introducing unnecessary latency and complexity for simple key-value session storage, and it lacks native TTL-based expiration for session data.

167
MCQhard

A company runs a global application using Amazon Aurora Global Database. The primary region is us-east-1, and secondary regions are eu-west-1 and ap-southeast-1. The application reports that writes to the primary are taking longer than expected. What is the most likely cause?

A.Multi-AZ failover occurred in the primary region.
B.The Global Database replication to secondary regions is causing synchronous commit latencies.
C.The primary DB instance is under-provisioned.
D.Read replicas in secondary regions are overloaded.
AnswerC

An under-provisioned primary DB instance can lead to longer write times due to insufficient CPU, memory, or I/O capacity to handle the write workload.

Why this answer

Amazon Aurora Global Database uses asynchronous replication from the primary region to secondary regions. Writes to the primary are committed locally and do not wait for replication to complete. Therefore, replication to secondary regions does not introduce synchronous commit latencies.

The most likely cause of slower writes to the primary is an under-provisioned primary DB instance that cannot handle the write workload efficiently.

Exam trap

Candidates often assume that Global Database replication causes synchronous overhead on the primary, but Aurora Global Database uses asynchronous replication, which does not add commit latency. The real performance bottleneck is typically the primary instance's capacity.

How to eliminate wrong answers

Option A is wrong because Multi-AZ failover in the primary region would cause a brief write outage or failover time, not consistently longer write latencies; after failover, writes resume normally. Option B is wrong because Aurora Global Database replication is asynchronous, not synchronous; synchronous replication would cause commit latency, but that is not how Aurora Global Database works. Option D is wrong because read replicas in secondary regions are read-only and do not affect write performance on the primary; they handle only read traffic.

168
MCQmedium

A company is running a MongoDB workload on-premises and wants to migrate to AWS with minimal operational overhead. The application uses MongoDB-specific features like aggregation pipelines. Which service is best?

A.Amazon DynamoDB
B.Amazon DocumentDB
C.Amazon RDS for PostgreSQL
D.Amazon Elasticsearch Service
AnswerB

DocumentDB is MongoDB-compatible and fully managed, reducing operational overhead.

Why this answer

Amazon DocumentDB is the correct choice because it is a fully managed, MongoDB-compatible document database that supports MongoDB-specific features like aggregation pipelines, indexes, and queries. It minimizes operational overhead by handling hardware provisioning, patching, backups, and replication, making it ideal for migrating an on-premises MongoDB workload to AWS without significant application changes.

Exam trap

The trap here is that candidates often choose Amazon DynamoDB because it is a NoSQL database, but they overlook that DynamoDB lacks MongoDB wire protocol compatibility and aggregation pipeline support, forcing a complete application rewrite.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB is a key-value and document database that does not support MongoDB aggregation pipelines or MongoDB wire protocol, requiring significant application rewrites. Option C is wrong because Amazon RDS for PostgreSQL is a relational database that does not natively support MongoDB's document model or aggregation pipelines, forcing schema redesign and data migration complexity. Option D is wrong because Amazon Elasticsearch Service is a search and analytics engine, not a document database, and lacks MongoDB compatibility, making it unsuitable for running MongoDB workloads.

169
Multi-Selectmedium

A company is designing a disaster recovery strategy for an Amazon RDS for PostgreSQL database. They need a Recovery Point Objective (RPO) of less than 5 seconds and a Recovery Time Objective (RTO) of less than 1 minute. Which TWO actions should they take? (Choose two.)

Select 2 answers
A.Use AWS Database Migration Service for continuous replication to a separate instance
B.Create a cross-region read replica and manually update DNS in a disaster
C.Take hourly snapshots and restore in another region
D.Create a cross-region read replica and configure automatic failover using Amazon Route 53 health checks
E.Configure Multi-AZ deployment with a synchronous standby in another AZ
AnswersD, E

Automatic failover with health checks can achieve RTO <1 minute and RPO <5 seconds with synchronous replication.

Why this answer

A cross-region read replica can be promoted to a primary instance in under a minute, and with Amazon Route 53 health checks configured for automatic failover, the DNS update occurs automatically, meeting the RTO of less than 1 minute. The asynchronous replication lag is typically sub-second, achieving an RPO of less than 5 seconds. Option E is correct because a Multi-AZ deployment with a synchronous standby in another Availability Zone provides automatic failover with no data loss (RPO of 0) and failover completes in about 30-60 seconds, satisfying both RPO and RTO requirements.

Exam trap

The trap here is that candidates often assume cross-region read replicas support automatic failover natively, but they do not; you must explicitly configure Route 53 health checks and DNS failover to achieve the required RTO, while Multi-AZ provides automatic failover but only within the same region, not cross-region.

170
MCQeasy

A startup is building a social media application. User profiles, posts, and comments have relationships but the team expects rapid growth and wants to scale horizontally with no single points of failure. They need a database that supports flexible schemas for different content types. Which database service is most appropriate?

A.Amazon DynamoDB
B.Amazon Neptune
C.Amazon Redshift
D.Amazon RDS for MySQL
AnswerA

DynamoDB provides horizontal scaling, flexible schema, and high availability.

Why this answer

Amazon DynamoDB is the most appropriate choice because it is a fully managed NoSQL key-value and document database that supports flexible schemas, enabling the application to handle user profiles, posts, and comments with varying attributes. It scales horizontally by automatically partitioning data across multiple nodes, and its multi-AZ replication eliminates single points of failure, meeting the startup's requirements for rapid growth and high availability.

Exam trap

The trap here is that candidates may choose Amazon Neptune because the question mentions 'relationships,' but the primary requirements are flexible schemas and horizontal scaling, which DynamoDB handles better for general-purpose content storage, while Neptune is specialized for graph traversal use cases.

How to eliminate wrong answers

Option B (Amazon Neptune) is wrong because it is a graph database optimized for highly connected data and complex relationship queries (e.g., social graphs), but the question emphasizes flexible schemas and horizontal scaling for general content types, not graph traversal performance; Neptune also has a different scaling model and is not as cost-effective for simple key-value or document workloads. Option C (Amazon Redshift) is wrong because it is a columnar data warehouse designed for analytical queries on large datasets, not for transactional workloads with flexible schemas; it does not support real-time, low-latency reads/writes for a social media application and has a different scaling architecture. Option D (Amazon RDS for MySQL) is wrong because it is a relational database with a fixed schema, requiring predefined tables and relationships, which contradicts the need for flexible schemas; it also scales vertically (by increasing instance size) rather than horizontally, and single-AZ deployments can be a single point of failure unless Multi-AZ is configured, which still does not provide the same horizontal scaling as DynamoDB.

171
MCQeasy

A company needs to store application logs for 90 days and run periodic analytical queries. The logs are generated at 1 TB per day. Which storage solution is most cost-effective?

A.Store logs in Amazon RDS for MySQL with partitioning.
B.Store logs in Amazon Redshift with automatic compression.
C.Store logs in Amazon DynamoDB with TTL for expiration.
D.Store logs in Amazon S3 and use S3 Select for queries.
AnswerD

S3 is cost-effective and S3 Select supports queries.

Why this answer

Amazon S3 is the most cost-effective storage solution for 90-day retention of 1 TB/day of application logs, as it offers low-cost object storage with lifecycle policies to automatically expire data after 90 days. S3 Select allows you to run analytical queries (e.g., filtering, aggregations) directly on the data stored in S3 using SQL-like statements, without needing to load data into a separate analytics engine, thus minimizing compute costs and operational overhead.

Exam trap

The trap here is that candidates often over-engineer the solution by choosing a database or data warehouse (like Redshift or RDS) for log storage, forgetting that S3 with S3 Select is purpose-built for cost-effective storage and serverless querying of large datasets with minimal operational complexity.

How to eliminate wrong answers

Option A is wrong because Amazon RDS for MySQL is a relational database designed for transactional workloads, not for storing and querying large volumes of log data at petabyte scale; it would be prohibitively expensive for 90 TB of logs and lacks native log expiration features. Option B is wrong because Amazon Redshift is a data warehouse optimized for complex analytical queries on structured data, but it is overkill and costly for simple log retention and periodic queries; it also requires loading data into the warehouse, incurring additional compute and storage costs. Option C is wrong because Amazon DynamoDB is a NoSQL key-value and document database designed for low-latency access at scale, but it is not cost-effective for storing 90 TB of log data due to its per-GB storage cost and provisioned throughput costs; while TTL can expire items, DynamoDB is not optimized for analytical queries like S3 Select.

172
MCQmedium

A company is designing a database for an e-commerce platform that requires high availability and automatic failover with minimal downtime. The application performs both OLTP and read-heavy analytics. Which AWS database service should be used?

A.Amazon DynamoDB
B.Amazon RDS for MySQL
C.Amazon Redshift
D.Amazon Aurora
AnswerD

Aurora offers high availability, automatic failover, and up to 15 read replicas for analytics.

Why this answer

Amazon Aurora is the correct choice because it combines the high availability and automatic failover of a relational database with the performance needed for both OLTP and read-heavy analytics. Aurora provides six-way replication across three Availability Zones, automatic failover in under 30 seconds, and supports up to 15 low-latency read replicas that can offload analytics queries without impacting write performance.

Exam trap

The trap here is that candidates often choose Amazon RDS for MySQL because they assume Multi-AZ provides automatic failover and read replicas for analytics, but they overlook that Aurora offers faster failover, better read replica performance, and integrated storage replication without the need for separate Multi-AZ configuration.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB is a NoSQL key-value and document database optimized for high-scale OLTP workloads, but it lacks native support for complex SQL joins, aggregations, and the relational schema required for read-heavy analytics typical of an e-commerce platform. Option B is wrong because Amazon RDS for MySQL, while supporting read replicas, has a single-AZ primary by default and requires Multi-AZ deployment for failover, which still incurs a longer failover time (typically 1-2 minutes) and does not offer the same level of read replica performance or automatic scaling as Aurora. Option C is wrong because Amazon Redshift is a columnar data warehouse designed for large-scale analytics and OLAP workloads, not for OLTP transactions with high concurrency and sub-millisecond latency requirements.

173
MCQhard

A company is designing a database for a mobile application that requires offline synchronization. Users should be able to read and write data while offline, and changes should sync when connectivity is restored. Which AWS service supports this pattern?

A.Amazon RDS Proxy
B.Amazon S3 Transfer Acceleration
C.Amazon Cognito
D.AWS AppSync with Amazon DynamoDB
AnswerD

AppSync supports offline data sync with conflict resolution.

Why this answer

AWS AppSync with Amazon DynamoDB is correct because AppSync provides managed GraphQL APIs that support offline data synchronization via its client SDKs. When a mobile app is offline, mutations are queued locally and automatically replayed against DynamoDB once connectivity is restored, using a conflict resolution mechanism (e.g., last-writer-wins or custom resolvers) to merge changes.

Exam trap

The trap here is that candidates may confuse Amazon Cognito's authentication capabilities with the offline sync feature, overlooking that AppSync is the service that actually provides the offline mutation queue and conflict resolution.

How to eliminate wrong answers

Option A is wrong because Amazon RDS Proxy is a connection pooling service for relational databases, not designed for offline sync or mobile client data caching. Option B is wrong because Amazon S3 Transfer Acceleration speeds up uploads to S3 over long distances using edge locations, but it does not provide offline write queuing or conflict resolution for application data. Option C is wrong because Amazon Cognito is an identity and user management service; while it can integrate with AppSync for authentication, it alone does not enable offline data synchronization or local mutation storage.

174
Multi-Selecthard

A company is using Amazon DynamoDB to store IoT sensor data. The application writes a large volume of data and needs to read recent data by timestamp. The table has a partition key of device_id and a sort key of timestamp. The access pattern is to read the latest data for a specific device. Which TWO design patterns will optimize read performance and reduce costs?

Select 2 answers
A.Use adaptive capacity to evenly distribute traffic across partitions.
B.Use DynamoDB Accelerator (DAX) to cache the most recent reads.
C.Enable auto scaling for the table to handle spikes.
D.Use DynamoDB Transactions for consistent reads.
E.Create a global secondary index (GSI) with device_id as partition key and timestamp as sort key.
AnswersA, B

Adaptive capacity helps handle hot partitions, improving performance and cost efficiency.

Why this answer

Adaptive capacity allows DynamoDB to automatically manage partition traffic distribution, preventing hot partitions when a single device_id receives a high volume of writes. This ensures consistent read performance without manual partition management. Option B is correct because DAX provides an in-memory cache for the most frequently accessed data, reducing read latency and read capacity unit consumption for repeated queries of recent sensor data.

Exam trap

The trap here is that candidates often confuse auto scaling with adaptive capacity, or assume a GSI is always beneficial, not realizing that duplicating the base table key structure adds cost without performance gain.

175
MCQmedium

A company is running a MySQL database on an EC2 instance and wants to migrate to Amazon RDS for MySQL with minimal downtime. The database is 500 GB in size and has a high write workload. Which migration approach is most appropriate?

A.Export data to Amazon S3 and use AWS Glue to load into RDS.
B.Copy the MySQL data directory to Amazon EBS and attach to RDS.
C.Take a mysqldump from the source and import into RDS.
D.Use AWS Database Migration Service (DMS) with ongoing replication.
AnswerD

DMS supports live migration with minimal downtime.

Why this answer

AWS DMS with ongoing replication (change data capture) is the most appropriate approach because it allows you to migrate the 500 GB database with minimal downtime. DMS performs a full load of the existing data and then continuously replicates ongoing changes from the source MySQL EC2 instance to the target Amazon RDS for MySQL, enabling a cutover with only a brief pause in writes.

Exam trap

The trap here is that candidates often choose mysqldump (Option C) because it is a familiar tool, but they overlook the requirement for minimal downtime and the impact of a high write workload on the time needed to complete a consistent export.

How to eliminate wrong answers

Option A is wrong because AWS Glue is an ETL service designed for transforming and loading data into data lakes or analytics services, not for direct database migration with minimal downtime; it cannot handle ongoing replication of MySQL binary logs. Option B is wrong because you cannot attach an EBS volume to an RDS instance; RDS manages its own storage and does not allow direct mounting of external EBS volumes. Option C is wrong because mysqldump is a logical backup tool that requires taking the source database offline or locking tables to ensure consistency, resulting in significant downtime for a 500 GB database with a high write workload.

176
MCQeasy

A startup is building a mobile app backend using Amazon DynamoDB. They anticipate unpredictable traffic spikes. Which DynamoDB feature should they use to handle the spikes without manual intervention?

A.Use DynamoDB Accelerator (DAX) as a cache layer.
B.Enable DynamoDB Auto Scaling for read and write capacity.
C.Set up a TTL (Time to Live) to automatically expire old items.
D.Implement DynamoDB Global Tables for multi-region replication.
AnswerB

Auto Scaling adjusts capacity based on traffic patterns, handling spikes automatically.

Why this answer

DynamoDB Auto Scaling (option B) automatically adjusts the provisioned read and write capacity based on actual traffic patterns, using CloudWatch alarms and the Application Auto Scaling service. This allows the startup to handle unpredictable spikes without manual intervention, as the service will increase capacity during high demand and decrease it during low demand, ensuring consistent performance and cost efficiency.

Exam trap

The DBS-C01 exam often tests the misconception that caching (DAX) or data expiration (TTL) can handle traffic spikes, but the key is that Auto Scaling directly adjusts the provisioned capacity to match demand, while DAX only caches reads and TTL only manages data lifecycle.

How to eliminate wrong answers

Option A is wrong because DynamoDB Accelerator (DAX) is an in-memory cache that reduces read latency but does not handle write capacity spikes or automatically adjust provisioned throughput; it addresses performance, not scaling. Option C is wrong because TTL (Time to Live) is used to automatically expire and delete old items to manage storage costs and data retention, not to handle traffic spikes or scale capacity. Option D is wrong because DynamoDB Global Tables provide multi-region replication for disaster recovery and low-latency global access, but they do not automatically scale read/write capacity in response to traffic spikes; each replica table still requires its own capacity management.

177
MCQmedium

Refer to the exhibit. An application team notices that the MySQL RDS instance 'mydb' is running at 80% CPU utilization during peak hours. They need to improve read performance without increasing the CPU load on the primary instance. Which action should they take?

A.Increase the DB instance class to db.r5.xlarge
B.Create a Read Replica in the same region
C.Change storage type to io1 with higher IOPS
D.Enable Multi-AZ deployment
AnswerB

Read Replica offloads read queries, reducing CPU on primary.

Why this answer

Creating a Read Replica offloads read traffic from the primary MySQL RDS instance, reducing CPU load on the primary while improving read performance for applications. Read Replicas asynchronously replicate data using MySQL’s native binlog-based replication, allowing the primary to focus on write operations without additional CPU overhead from serving reads.

Exam trap

The trap here is confusing Multi-AZ (which provides failover but no read scaling) with Read Replicas (which offload reads), leading candidates to select Multi-AZ when the goal is to reduce CPU load on the primary.

How to eliminate wrong answers

Option A is wrong because increasing the DB instance class to db.r5.xlarge would add more CPU and memory to the primary instance, but it does not offload read traffic; the primary would still handle all read requests, potentially increasing CPU utilization further. Option C is wrong because changing storage type to io1 with higher IOPS improves disk I/O performance but does not reduce CPU load; CPU utilization is driven by query processing, not storage throughput. Option D is wrong because enabling Multi-AZ deployment provides high availability and automatic failover via synchronous standby replication, but it does not offload read traffic; the standby replica cannot serve reads, so CPU load on the primary remains unchanged.

178
MCQeasy

A mobile gaming company needs a database to store player scores and leaderboards. The data must be updated in real time as players finish games. The database must support high write throughput and provide sub-millisecond read latency for leaderboard queries. Which database is best suited?

A.Amazon RDS for MySQL with read replicas
B.Amazon Redshift
C.Amazon ElastiCache for Redis
D.Amazon DynamoDB
AnswerD

DynamoDB offers consistent single-digit millisecond latency and high throughput.

Why this answer

Amazon DynamoDB is the best choice because it is a fully managed NoSQL key-value and document database designed for single-digit millisecond read and write performance at any scale. Its DAX (DynamoDB Accelerator) caching layer can further reduce read latency to sub-millisecond for leaderboard queries, while its auto-scaling write capacity handles the high write throughput required for real-time player score updates.

Exam trap

The trap here is that candidates often choose ElastiCache for Redis (Option C) because of its sub-millisecond latency, but they overlook the requirement for a durable database that persists player scores and leaderboards, which Redis does not guarantee without additional configuration and risk of data loss.

How to eliminate wrong answers

Option A is wrong because Amazon RDS for MySQL with read replicas is a relational database that cannot achieve sub-millisecond read latency for leaderboard queries at high write throughput; read replicas introduce replication lag and are not designed for real-time, high-frequency writes. Option B is wrong because Amazon Redshift is a petabyte-scale data warehouse optimized for complex analytical queries on large datasets, not for real-time, high-write-throughput transactional workloads or sub-millisecond reads. Option C is wrong because Amazon ElastiCache for Redis is an in-memory cache, not a durable database; while it provides sub-millisecond latency, it lacks the persistence and durability guarantees needed for storing player scores and leaderboards as a primary database, and data loss can occur on node failure.

179
MCQhard

A company uses Amazon Aurora MySQL-Compatible Edition for its e-commerce platform. During flash sales, the database experiences high write contention on the 'orders' table, causing slow inserts and deadlocks. The development team wants to reduce contention without changing the application code. Which database design strategy is MOST effective?

A.Implement manual sharding across multiple Aurora clusters
B.Add more read replicas to offload read traffic
C.Use a larger instance type with higher IOPS
D.Enable Aurora Multi-Master to allow multiple write nodes
AnswerD

Multi-Master allows concurrent writes, reducing contention.

Why this answer

Aurora Multi-Master enables multiple writer nodes to accept write operations concurrently, which directly reduces write contention on the 'orders' table during high-volume flash sales. Unlike single-master Aurora, Multi-Master allows each writer to handle inserts independently, minimizing deadlocks and improving throughput without requiring application code changes.

Exam trap

The trap here is that candidates often assume scaling up the instance type (Option C) or adding read replicas (Option B) will solve write contention, but they fail to recognize that only a multi-writer architecture directly addresses the bottleneck of a single writer node.

How to eliminate wrong answers

Option A is wrong because manual sharding across multiple Aurora clusters requires significant application code changes to route queries, which violates the constraint of not changing application code. Option B is wrong because adding read replicas only offloads read traffic and does nothing to reduce write contention or deadlocks on the primary writer. Option C is wrong because using a larger instance type with higher IOPS can improve performance but does not address the fundamental issue of concurrent write contention; it still relies on a single writer node, which remains a bottleneck.

180
MCQeasy

A company needs to store and query graph data (nodes and edges) for a social network. They require low-latency traversals. Which AWS database is best suited?

A.Amazon Neptune
B.Amazon RDS for MySQL
C.Amazon ElastiCache for Redis
D.Amazon DynamoDB
AnswerA

Purpose-built graph database for low-latency traversals.

Why this answer

Amazon Neptune is a fully managed graph database service optimized for storing and querying highly connected data, such as social network nodes and edges. It supports both property graph (Gremlin) and RDF (SPARQL) models, enabling low-latency traversals of complex relationships. This makes it the ideal choice for workloads requiring efficient graph queries over interconnected data.

Exam trap

The trap here is that candidates often choose DynamoDB or Redis because they associate NoSQL with flexibility for graph data, but they overlook the critical requirement for native graph traversal capabilities and low-latency multi-hop queries, which only a dedicated graph database like Neptune can provide.

How to eliminate wrong answers

Option B is wrong because Amazon RDS for MySQL is a relational database that uses SQL joins and indexes to model relationships, which becomes inefficient and slow for deep graph traversals as the number of connections grows. Option C is wrong because Amazon ElastiCache for Redis is an in-memory key-value store, not a graph database; while it can store adjacency lists, it lacks native graph query capabilities like Gremlin or SPARQL, and traversals require application-level logic. Option D is wrong because Amazon DynamoDB is a NoSQL key-value and document database that does not support graph-specific operations; modeling graph data in DynamoDB requires manual adjacency lists and results in high-latency multi-hop queries due to its lack of native graph traversal engines.

181
MCQeasy

A startup is building a real-time leaderboard for a gaming application. The data is highly dynamic with frequent updates and requires single-digit millisecond latency. Which database is most suitable?

A.Amazon Neptune
B.Amazon Redshift
C.Amazon DynamoDB
D.Amazon RDS for PostgreSQL
AnswerC

DynamoDB offers consistent single-digit millisecond performance, ideal for real-time leaderboards.

Why this answer

Amazon DynamoDB is the most suitable choice because it is a fully managed NoSQL key-value and document database that delivers single-digit millisecond latency at any scale, making it ideal for real-time leaderboards with high-frequency updates. Its DAX (DynamoDB Accelerator) caching layer can further reduce read latency to microseconds, while its auto-scaling and on-demand capacity modes handle the highly dynamic workload without downtime.

Exam trap

The DBS-C01 exam often tests the misconception that a relational database like PostgreSQL is inherently faster for all real-time workloads, but the trap here is that the question explicitly requires 'single-digit millisecond latency' and 'highly dynamic with frequent updates'—characteristics that DynamoDB's NoSQL architecture is specifically designed to meet, whereas RDS for PostgreSQL would introduce latency from locking, indexing overhead, and connection pooling that prevents it from consistently achieving that performance under high write loads.

How to eliminate wrong answers

Option A is wrong because Amazon Neptune is a graph database optimized for highly connected data (e.g., social networks, fraud detection), not for high-throughput, low-latency key-value access patterns required by a real-time leaderboard. Option B is wrong because Amazon Redshift is a petabyte-scale data warehouse designed for complex analytical queries on large datasets, not for single-digit millisecond transactional updates or real-time point lookups. Option D is wrong because Amazon RDS for PostgreSQL is a relational database that, while capable, introduces overhead from ACID transactions, indexing, and connection management that typically results in higher latency (often 5–20 ms or more) compared to DynamoDB's optimized NoSQL engine, and it does not natively support the auto-scaling or DAX caching needed for such a dynamic workload.

182
MCQeasy

A financial services company is migrating its Oracle database to Amazon Aurora PostgreSQL. The database runs a critical batch processing job every night that updates millions of rows. The company needs the migration to minimize downtime and ensure data integrity. Which AWS service should the database specialist use to perform the migration?

A.AWS Database Migration Service (AWS DMS) with ongoing replication from Oracle to Aurora PostgreSQL
B.AWS Data Pipeline to export data from Oracle and import into Aurora PostgreSQL
C.AWS Schema Conversion Tool (AWS SCT) to convert the schema and then use native PostgreSQL tools to migrate data
D.AWS Glue to extract data from Oracle and load into Aurora PostgreSQL
AnswerA

AWS DMS can perform a one-time migration and then use ongoing replication to keep the target in sync with the source, minimizing downtime.

Why this answer

AWS DMS with ongoing replication (change data capture, CDC) is the correct choice because it enables a near-zero-downtime migration by continuously replicating changes from the source Oracle database to the target Aurora PostgreSQL while the source remains fully operational. After the initial full load, DMS applies ongoing transactions, allowing you to cut over with minimal interruption. This directly addresses the requirement to minimize downtime for the nightly batch job and ensures data integrity through transactional consistency.

Exam trap

The trap here is that candidates often confuse AWS DMS with ETL tools like Glue or Data Pipeline, assuming any data movement service can handle live migrations, but only DMS provides the transactional consistency and CDC required for near-zero-downtime database migrations.

How to eliminate wrong answers

Option B is wrong because AWS Data Pipeline is a workflow orchestration service, not a database migration tool; it lacks built-in CDC capabilities and would require manual scripting to handle ongoing replication, leading to significant downtime. Option C is wrong because AWS SCT only converts the schema and code, not the data; using native PostgreSQL tools for data migration would require the source database to be offline or heavily throttled, causing unacceptable downtime for the nightly batch job. Option D is wrong because AWS Glue is an ETL service designed for data transformation and analytics, not for transactional database migrations; it does not support ongoing replication (CDC) and would require the source to be quiesced, breaking the requirement for minimal downtime.

183
MCQmedium

A company is building a real-time chat application using Amazon DynamoDB. Each message has a conversation ID, timestamp, sender, and content. The primary access pattern is to retrieve the most recent 50 messages for a given conversation, ordered by timestamp. Which table design minimizes cost and latency?

A.Use a composite primary key of conversation ID and message ID, and enable DynamoDB Streams to process messages.
B.Use DynamoDB Accelerator (DAX) to cache the most recent messages.
C.Use conversation ID as partition key and timestamp as sort key; query with ScanIndexForward=false and Limit=50.
D.Use conversation ID as partition key and a GSI on timestamp.
AnswerC

Directly supports the access pattern without additional indexes.

Why this answer

Using conversation ID as the partition key and timestamp as the sort key allows a single Query operation with ScanIndexForward=false to retrieve items in reverse chronological order, and Limit=50 ensures only the most recent 50 messages are returned. This design minimizes cost by avoiding full table scans or additional indexes, and minimizes latency by leveraging DynamoDB's native sort key ordering without needing external caching or streams.

Exam trap

The trap here is that candidates may over-engineer the solution by adding unnecessary components like DAX or GSIs, when DynamoDB's native sort key and query parameters directly solve the access pattern with minimal cost and latency.

How to eliminate wrong answers

Option A is wrong because enabling DynamoDB Streams adds cost and complexity without addressing the access pattern; streams are for change data capture, not for efficient querying of recent messages. Option B is wrong because DAX is an in-memory cache that reduces read latency but adds cost and complexity; the primary access pattern can be efficiently served directly from DynamoDB without caching, making DAX unnecessary and more expensive. Option D is wrong because using a GSI on timestamp introduces additional storage and write costs, and the query still requires a ScanIndexForward=false with Limit=50 on the GSI, which is redundant since the base table's sort key already supports the same pattern more efficiently.

184
MCQhard

A financial services company uses Amazon Aurora MySQL-Compatible Edition for transaction processing. They need to run complex analytical queries on the same data without impacting transactional performance. Which solution meets these requirements?

A.Use Aurora Zero-ETL integration with Amazon Redshift
B.Enable Performance Insights and use RDS Proxy
C.Export data to Amazon S3 and query with Athena
D.Create an Aurora Replica and run analytical queries against it
AnswerA

Zero-ETL integration allows Redshift to query Aurora data directly without impacting performance.

Why this answer

Aurora Zero-ETL integration with Amazon Redshift allows you to run complex analytical queries on transactional data without impacting Aurora's performance. It eliminates the need for extract, transform, and load (ETL) pipelines by automatically replicating data from Aurora to Redshift in near real-time, ensuring that analytical workloads are offloaded to a separate, optimized analytics engine.

Exam trap

The trap here is that candidates often assume an Aurora Replica (Option D) is sufficient for read-heavy analytics, but they overlook that it still shares the same storage subsystem and can cause I/O contention and replication lag under heavy analytical loads.

How to eliminate wrong answers

Option B is wrong because Performance Insights and RDS Proxy are designed for monitoring and connection management, not for offloading analytical queries; they do not prevent analytical workloads from consuming Aurora's compute and I/O resources. Option C is wrong because exporting data to S3 and querying with Athena introduces latency and manual ETL steps, and Athena is optimized for ad-hoc querying of data lakes, not for continuous, complex analytical queries on live transactional data. Option D is wrong because an Aurora Replica shares the same underlying storage and can still impact the primary instance's performance during heavy analytical queries, as it competes for storage I/O and can cause replication lag.

185
MCQeasy

A company is designing a database for an IoT application that ingests millions of small sensor readings per second. The data is time-series and queries are mostly range scans over time. The company needs a cost-effective solution with high write throughput. Which AWS service should the database specialist recommend?

A.Amazon Redshift with auto-ingest
B.Amazon Timestream
C.Amazon RDS for PostgreSQL with pg_partman extension
D.Amazon DynamoDB with time-series data modeling
AnswerB

Timestream is a serverless time-series database optimized for IoT data.

Why this answer

Amazon Timestream is a purpose-built time-series database designed for IoT and operational applications that ingest millions of data points per second. It automatically manages storage tiers (in-memory and magnetic) to optimize cost, and its query engine is optimized for range scans over time, making it the most cost-effective and high-throughput choice for this workload.

Exam trap

The trap here is that candidates often default to DynamoDB for high-throughput workloads without recognizing that Timestream is the only AWS service purpose-built for time-series data, offering automatic tiering and optimized time-range queries that DynamoDB cannot match without complex custom sharding and indexing.

How to eliminate wrong answers

Option A is wrong because Amazon Redshift is a columnar data warehouse optimized for complex analytical queries on large datasets, not for high-velocity, high-volume time-series ingestion; its auto-ingest feature cannot handle millions of writes per second without significant cost and latency. Option C is wrong because Amazon RDS for PostgreSQL with pg_partman is a relational database that, even with partitioning, cannot sustain millions of writes per second due to single-writer limitations and transaction overhead, and it lacks the specialized storage tiering for time-series data. Option D is wrong because while DynamoDB can be modeled for time-series data, it is not purpose-built for time-series workloads; it requires manual partitioning and TTL management, and its query model is less efficient for range scans over time compared to Timestream's native time-based indexing.

186
MCQmedium

A company is designing a database for an IoT application that receives millions of sensor readings per second. Each reading is a small JSON payload (timestamp, device_id, metric, value). The primary query pattern retrieves the most recent reading for a given device. Which AWS database service is BEST suited for this workload?

A.Amazon Aurora
B.Amazon DynamoDB
C.Amazon ElastiCache for Redis
D.Amazon RDS for MySQL
AnswerB

Handles high write throughput and supports efficient point queries with sort key.

Why this answer

Amazon DynamoDB is best suited because it is a fully managed NoSQL key-value database that delivers single-digit millisecond latency at any scale. The primary query pattern—retrieving the most recent reading for a given device—maps directly to a DynamoDB table with a composite primary key (device_id as partition key, timestamp as sort key) and a Query operation with ScanIndexForward=false and Limit=1. This design handles millions of writes per second with consistent performance, unlike relational databases that struggle with such high-velocity ingestion.

Exam trap

The trap here is that candidates often choose ElastiCache for Redis because they assume 'most recent reading' implies a caching solution, but the question specifies a database for the workload, and Redis lacks the durability and query flexibility (e.g., filtering by timestamp range) needed for a primary data store of sensor readings.

How to eliminate wrong answers

Option A is wrong because Amazon Aurora is a relational database optimized for OLTP workloads with moderate write throughput; it cannot sustain millions of writes per second without significant scaling challenges and incurs higher latency for simple key-value lookups. Option C is wrong because Amazon ElastiCache for Redis is an in-memory cache, not a durable database; while it can serve recent data quickly, it lacks the persistence, durability, and query capabilities (e.g., filtering by timestamp) required for a primary data store of sensor readings. Option D is wrong because Amazon RDS for MySQL is a relational database with limited write scalability and higher per-request overhead; it would require complex sharding and still struggle with the ingestion rate and the need for a simple, fast 'latest reading' query.

187
MCQeasy

A company is building a social network application that needs to store user profiles, friend relationships, and a feed of posts. The feed queries are complex, involving graph traversals (e.g., friends of friends). Which database is best suited for the relationship data?

A.Amazon DynamoDB
B.Amazon RDS for MySQL
C.Amazon ElastiCache for Redis
D.Amazon Neptune
AnswerD

Neptune is a graph database purpose-built for traversing relationships.

Why this answer

Amazon Neptune is a fully managed graph database service optimized for storing and querying highly connected data. It supports both property graph and RDF models, and it uses graph traversal languages like Gremlin and SPARQL, making it ideal for complex friend-of-friend queries and social network relationship data.

Exam trap

The trap here is that candidates often choose DynamoDB for its scalability or RDS for its familiarity with JOINs, failing to recognize that graph databases are purpose-built for relationship-heavy workloads and that the exam specifically tests the ability to match database types to query patterns.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB is a key-value and document database that does not natively support graph traversals; querying friends of friends would require multiple expensive client-side joins or scans. Option B is wrong because Amazon RDS for MySQL is a relational database that can model relationships with JOINs, but it suffers from performance degradation and complexity as the depth of graph traversals increases, lacking native graph traversal optimizations. Option C is wrong because Amazon ElastiCache for Redis is an in-memory data store primarily used for caching, session management, and simple data structures; while it can store adjacency lists, it does not provide a graph query language or support complex multi-hop traversals efficiently.

188
Drag & Dropmedium

Arrange the steps to enable encryption at rest for an existing unencrypted Amazon RDS for MariaDB DB instance in the correct order.

Drag steps to the numbered slots on the right, or tap a step then tap a slot.

Steps
Order
1Step 1
2Step 2
3Step 3
4Step 4

Why this order

Encryption at rest for an existing instance requires creating an encrypted snapshot and restoring it, then migrating applications.

189
MCQeasy

A startup is building a social media analytics platform. The workload is write-heavy, with millions of events per day containing user actions (likes, shares, comments). The data model is simple: each event is a JSON document with a timestamp, user ID, and action type. Queries are primarily aggregations over time (e.g., count of likes per hour) and require low-latency responses for dashboards. The team wants to minimize operational overhead and cost. Which database service is most appropriate?

A.Amazon ElastiCache for Redis to store aggregated counts.
B.Amazon RDS for PostgreSQL with TimescaleDB extension.
C.Amazon Timestream, a purpose-built time-series database.
D.Amazon DynamoDB with global secondary indexes on timestamp and action type.
AnswerC

Timestream is designed for high write throughput and time-based aggregations.

Why this answer

Amazon Timestream is the most appropriate service because it is purpose-built for time-series data, supporting high write throughput and providing built-in aggregation functions for time-based queries. It is serverless, minimizing operational overhead and cost. Option A (ElastiCache) is a caching layer, not a durable database.

Option B (RDS with TimescaleDB) requires manual scaling and management, increasing overhead. Option D (DynamoDB) is optimized for key-value access, not efficient for time-series aggregations without additional processing and secondary indexes.

190
MCQmedium

A company is building a mobile application that requires users to be able to query their order history quickly. The data is stored in Amazon DynamoDB, and each user has up to 10,000 orders over time. The application needs to support pagination and filtering by order date. What is the MOST efficient way to model this data in DynamoDB?

A.Scan the entire table and filter on user ID
B.Store all orders as a JSON document in a single item per user
C.Use user ID as the partition key and a Global Secondary Index on order date
D.Use user ID as the partition key and order date as the sort key
AnswerD

Allows range queries on order date and efficient pagination.

Why this answer

Using user ID as the partition key ensures all orders for a user are co-located on a single partition, enabling efficient queries. Adding order date as the sort key allows the application to filter and paginate by date range using the Query API with KeyConditionExpression, which is far more efficient than scanning or using a secondary index.

Exam trap

The trap here is that candidates often choose a Global Secondary Index (Option C) thinking it is necessary for date-based filtering, but the sort key on the base table is more efficient and avoids the cost and eventual consistency of a GSI when the partition key already isolates the user's data.

How to eliminate wrong answers

Option A is wrong because scanning the entire table and filtering on user ID would read every item in the table, consuming excessive read capacity and causing high latency, especially as the table grows. Option B is wrong because storing all orders as a JSON document in a single item per user would exceed DynamoDB's 400 KB item size limit when a user has up to 10,000 orders, and it prevents efficient filtering and pagination by order date. Option C is wrong because while a Global Secondary Index (GSI) on order date could support date-based queries, it would require a separate query to retrieve orders for a specific user and would not be as efficient as using the sort key on the base table, which avoids the eventual consistency and additional cost of a GSI.

191
MCQeasy

A company runs a time-series application that records sensor data every second. The data volume is 500 GB per month and grows continuously. They need to query the last 30 days of data frequently and older data rarely. Which database design is MOST appropriate?

A.Amazon Timestream
B.Amazon RDS for PostgreSQL with partitioning
C.Amazon DynamoDB with TTL
D.Amazon S3 with Athena and partitioning
AnswerA

Timestream is purpose-built for time-series data with automatic tiering.

Why this answer

Amazon Timestream is purpose-built for time-series data, automatically storing recent data in memory for fast queries and moving older data to a cost-optimized store. This matches the workload of frequent queries on the last 30 days and rare queries on older data, with continuous growth at 500 GB/month.

Exam trap

The trap here is that candidates often choose DynamoDB with TTL because they associate TTL with data lifecycle management, but they overlook that DynamoDB lacks native time-series query capabilities and efficient range scans, making it a poor fit for frequent time-based queries.

How to eliminate wrong answers

Option B is wrong because Amazon RDS for PostgreSQL with partitioning requires manual management of partition maintenance, vacuuming, and scaling, and does not natively separate hot and cold storage tiers for time-series data, leading to higher operational overhead and cost for this volume. Option C is wrong because Amazon DynamoDB with TTL only handles data expiration, not efficient range scans or aggregation queries over time-series data; it lacks native time-based query optimization and can result in high read costs for scanning large time ranges. Option D is wrong because Amazon S3 with Athena and partitioning requires running a query engine that incurs per-scan costs and latency, making it unsuitable for frequent sub-second queries on the last 30 days of data, and it lacks a built-in hot/cold storage tier.

192
MCQmedium

An application is receiving the error shown in the exhibit. The application uses connection pooling. The RDS instance is a db.r5.large with max_connections set to 1000. What is the most likely cause?

A.The security group is blocking incoming connections.
B.The max_connections parameter is set too low for the instance size.
C.The connection pool in the application is not releasing idle connections.
D.The RDS instance is in a different VPC than the application.
AnswerC

If the application's connection pool does not release idle connections, it can exhaust the maximum connections even though max_connections is set appropriately.

Why this answer

If the application's connection pool does not release idle connections, it can exhaust the maximum connections even though max_connections is set appropriately. Option A is incorrect because if the security group blocked connections, the application would receive a timeout or 'connection refused' error, not an error indicating max connections are reached. Option B is incorrect because max_connections is set to 1000, which is the default for a db.r5.large instance and is typically sufficient; the instance size supports that value.

Option D is incorrect because a different VPC would cause network connectivity issues (e.g., timeout) rather than a 'too many connections' error, which indicates the connection is established but the limit is reached.

193
MCQmedium

A company is migrating an on-premises PostgreSQL database to Amazon RDS for PostgreSQL. The database has a large table that is frequently accessed by reporting queries. The reporting queries filter on a column that has a high cardinality but low selectivity. To optimize query performance on this table, which design choice should the database specialist recommend?

A.Partition the table by the filter column
B.Use a read replica to offload reporting queries
C.Increase the provisioned read IOPS for the RDS instance
D.Create a covering index on the filter column
AnswerD

A covering index includes all columns needed, allowing query results to be returned from the index alone.

Why this answer

A covering index includes all columns needed by the reporting queries, allowing PostgreSQL to satisfy the query entirely from the index without accessing the heap (table) pages. This eliminates the overhead of random I/O for row lookups, which is especially beneficial when filtering on a high-cardinality, low-selectivity column where many rows match but the index scan alone can return the required data. In Amazon RDS for PostgreSQL, this reduces read IOPS consumption and improves query latency.

Exam trap

The trap here is that candidates often choose partitioning (Option A) for any large table with filtering, but fail to recognize that low selectivity means partitioning offers no pruning benefit, while a covering index directly reduces I/O by avoiding heap access.

How to eliminate wrong answers

Option A is wrong because partitioning by a high-cardinality, low-selectivity column would create many partitions with similar row counts, offering minimal pruning benefit and adding management overhead without improving query performance. Option B is wrong because a read replica offloads the query execution but does not optimize the query itself; the same slow table scan or index lookup would still occur on the replica. Option C is wrong because increasing provisioned read IOPS addresses throughput capacity but does not reduce the number of I/O operations required; the query still performs the same inefficient access pattern.

194
MCQhard

An e-commerce platform uses Amazon RDS for PostgreSQL to store order data. The database has a table "orders" with 500 million rows. The application runs a report query that aggregates daily sales for the last 30 days. The query currently scans the entire table and takes 15 minutes to complete. The team needs to reduce the query time to under 30 seconds. Which solution is MOST cost-effective?

A.Partition the table by month and query only the relevant partitions.
B.Create a materialized view that stores daily sales aggregates and refresh it nightly.
C.Add a composite index on the date column and the sales amount column.
D.Upgrade the RDS instance to a larger size with more vCPUs and memory.
AnswerB

The report reads pre-computed aggregates, reducing query time drastically.

Why this answer

A materialized view precomputes and stores the daily sales aggregates, allowing the application to query the precomputed result set directly instead of scanning 500 million rows. Refreshing the materialized view nightly (e.g., using pg_cron or a scheduled lambda) ensures the data is fresh enough for the report while keeping query time under 30 seconds. This approach avoids the cost of larger instances or complex partitioning and is the most cost-effective solution for a read-heavy, periodic aggregation workload.

Exam trap

The trap here is that candidates often choose partitioning (Option A) thinking it will reduce scan time, but they overlook that partitioning does not precompute aggregates and still requires scanning multiple partitions, whereas a materialized view directly addresses the aggregation bottleneck at a lower cost.

How to eliminate wrong answers

Option A is wrong because partitioning by month would still require scanning all partitions for the last 30 days unless the table is partitioned by day, and even then, querying multiple partitions still incurs overhead; moreover, partitioning alone does not precompute aggregates, so the query would still need to aggregate rows across partitions, which may not achieve sub-30-second performance. Option C is wrong because a composite index on the date and sales amount columns would not eliminate the need to scan and aggregate 500 million rows; the index would help with filtering but the aggregation step would still require a full index scan or table scan, and the query time would remain high. Option D is wrong because upgrading to a larger RDS instance increases cost significantly without addressing the root cause—the query still performs a full table scan and aggregation; it may reduce time but not reliably to under 30 seconds, and it is not cost-effective compared to precomputing results.

195
MCQmedium

A company is migrating an on-premises Oracle database to Amazon Aurora PostgreSQL. The database is 1 TB and has complex stored procedures. The migration must be completed within a 4-hour downtime window. Which migration approach is most efficient?

A.Use AWS Schema Conversion Tool (SCT) to convert schema only.
B.Use AWS SCT to convert schema and code, then AWS DMS for data migration.
C.Use Oracle Data Pump to export and pg_restore to import.
D.Use AWS DMS with ongoing replication.
AnswerB

SCT converts schema/code, DMS migrates data.

Why this answer

AWS SCT converts the Oracle schema and complex stored procedures to Aurora PostgreSQL-compatible code, while AWS DMS performs the full data migration within the 4-hour window. This combination handles both schema/code conversion and bulk data transfer efficiently, meeting the time constraint.

Exam trap

The trap here is that candidates may think DMS alone can handle the entire migration, overlooking that schema and stored procedure conversion is a prerequisite that SCT must address first.

How to eliminate wrong answers

Option A is wrong because using SCT for schema only leaves the stored procedures unconverted, and no data migration is performed, so the database cannot be used. Option C is wrong because Oracle Data Pump and pg_restore are manual, offline tools that require significant downtime for a 1 TB database and do not handle stored procedure conversion automatically, likely exceeding the 4-hour window. Option D is wrong because DMS with ongoing replication alone does not convert the schema or stored procedures; it requires a compatible target schema, which is missing without SCT.

196
MCQeasy

A startup is building a mobile app backend with user profiles and social features. They need a database that can handle flexible schemas, high read throughput for user profiles, and strong consistency for friend requests. Which database service should they choose?

A.Amazon RDS for MySQL
B.Amazon Neptune
C.Amazon DynamoDB
D.Amazon DocumentDB
AnswerC

DynamoDB provides flexible schema and high performance with strong consistency.

Why this answer

Amazon DynamoDB is the correct choice because it provides flexible schemas (schema-less tables) ideal for user profiles that may vary in attributes, supports high read throughput via auto-scaling and DAX caching, and offers strongly consistent reads (when requested) to ensure friend requests are processed reliably. Its fully managed nature and single-digit millisecond latency align with the startup's need for a scalable, consistent database.

Exam trap

The trap here is that candidates may choose Amazon Neptune for social features due to its graph capabilities, overlooking that DynamoDB can handle simple social relationships with strong consistency and lower operational overhead, while Neptune's eventual consistency and complexity are mismatched for this use case.

How to eliminate wrong answers

Option A is wrong because Amazon RDS for MySQL uses a fixed schema, which conflicts with the requirement for flexible schemas, and its read throughput is limited by instance size without native auto-scaling for high traffic. Option B is wrong because Amazon Neptune is a graph database designed for highly connected data (e.g., social graphs), but it does not provide strong consistency by default (it uses eventual consistency) and is overkill for simple user profiles and friend requests. Option D is wrong because Amazon DocumentDB (MongoDB-compatible) offers flexible schemas but does not support strong consistency for read operations (it uses eventual consistency by default), making it unsuitable for friend requests that require immediate consistency.

197
MCQhard

A company has a multi-player game that uses DynamoDB to store game state. The access pattern is write-heavy, and the game state for each active game session is updated frequently. The team notices throttling on the table during peak hours. The table has a partition key of game_id and no sort key. What design change would best reduce throttling?

A.Use a composite key with a random suffix on the partition key.
B.Enable DynamoDB global tables.
C.Enable DynamoDB Accelerator (DAX) for the table.
D.Increase the provisioned read capacity units (RCU).
AnswerA

Write sharding distributes writes across multiple partitions, reducing hot spots.

Why this answer

The write-heavy access pattern with frequent updates to the same game sessions causes throttling because all writes for a given game_id hit the same partition, creating a hot partition. Using a composite key with a random suffix on the partition key distributes the writes across multiple partitions, reducing the per-partition write throughput and alleviating throttling.

Exam trap

The DBS-C01 exam often tests the misconception that increasing capacity or adding caching solves write throttling, but the real issue is partition-level hot spots that require key distribution strategies like random suffixes.

How to eliminate wrong answers

Option B is wrong because DynamoDB global tables replicate data across regions for disaster recovery and low-latency reads, but they do not solve hot partition issues within a single table. Option C is wrong because DAX is an in-memory cache that accelerates reads, not writes, and does not address write-heavy throttling. Option D is wrong because increasing RCU only improves read capacity, but the problem is write-heavy throttling; increasing write capacity units (WCU) would be needed, and even that does not fix the underlying hot partition issue.

198
MCQeasy

A social media startup is selecting a database for user profiles with a flexible schema and high write throughput. The application is built on Node.js and requires low-latency access. Which database should they choose?

A.Amazon Aurora
B.Amazon ElastiCache for Redis
C.Amazon RDS for MySQL
D.Amazon DynamoDB
AnswerD

NoSQL, flexible schema, high throughput.

Why this answer

Amazon DynamoDB is the correct choice because it is a fully managed NoSQL key-value and document database that offers flexible schema (schemaless), single-digit millisecond latency at any scale, and is designed for high write throughput. It integrates natively with Node.js via the AWS SDK and supports auto-scaling to handle unpredictable write loads, making it ideal for a social media startup's user profile store.

Exam trap

The trap here is that candidates often confuse ElastiCache for Redis (Option B) as a primary database due to its low latency, but it is an in-memory cache lacking durability and flexible schema, whereas DynamoDB provides both low latency and persistent storage with a schemaless design.

How to eliminate wrong answers

Option A is wrong because Amazon Aurora is a relational database with a fixed schema, which does not support flexible schema design and incurs higher latency for high-write workloads compared to DynamoDB. Option B is wrong because Amazon ElastiCache for Redis is an in-memory cache, not a durable database; it lacks persistent storage guarantees and is intended for caching, not as a primary data store for user profiles. Option C is wrong because Amazon RDS for MySQL is a relational database with a rigid schema, requiring schema migrations for flexible fields, and its write throughput is limited by the underlying instance size and replication overhead, making it unsuitable for high-write, low-latency access with a flexible schema.

199
MCQhard

A startup is building a real-time analytics dashboard on AWS. The data arrives as time-series events from IoT devices at a rate of 10,000 writes per second. Each event is approximately 1 KB. The dashboard requires sub-second query latency for the last hour of data and must support ad-hoc analytical queries on historical data spanning months. The team needs to design a cost-effective database solution. Which combination of AWS services should be used?

A.Amazon ElastiCache for Redis for real-time queries, and Amazon OpenSearch Service for historical analytics.
B.Amazon DynamoDB with DynamoDB Accelerator (DAX) for real-time queries, and Amazon S3 with Amazon Athena for historical analytics.
C.Amazon Redshift for both real-time and historical queries, using auto-scaling and materialized views.
D.Amazon RDS for PostgreSQL with read replicas for real-time queries, and Amazon Redshift for historical analytics.
AnswerB

DynamoDB handles high write throughput, DAX provides sub-second reads, and S3 with Athena allows cost-effective ad-hoc queries on historical data.

Why this answer

DynamoDB with DAX provides microsecond to sub-millisecond latency for real-time queries on the last hour of data, while S3 with Athena offers a cost-effective serverless solution for ad-hoc analytical queries on historical data spanning months. DynamoDB's time-to-live (TTL) feature can automatically expire data older than one hour, keeping the hot dataset small and performant, and Athena's pay-per-query pricing avoids the cost of maintaining a separate analytics cluster.

Exam trap

The trap here is that candidates often choose ElastiCache or Redshift for real-time performance, overlooking that DynamoDB with DAX is purpose-built for high-throughput, low-latency key-value access and that S3 with Athena is the most cost-effective serverless option for infrequent analytical queries on large historical datasets.

How to eliminate wrong answers

Option A is wrong because Amazon ElastiCache for Redis is an in-memory cache, not a durable database; it cannot reliably store 10,000 writes/sec of 1 KB events long-term without data loss on failure, and OpenSearch Service is optimized for search and log analytics, not cost-effective ad-hoc SQL queries on months of historical data. Option C is wrong because Amazon Redshift is a data warehouse designed for batch and complex analytical queries, not for sub-second real-time writes at 10,000/sec; its write throughput is limited by node types and it incurs high costs for continuous ingestion of streaming data. Option D is wrong because Amazon RDS for PostgreSQL with read replicas cannot sustain 10,000 writes/sec on a single primary instance without significant scaling issues, and using Redshift for historical analytics adds unnecessary cost and complexity compared to S3 and Athena.

200
MCQeasy

A company is building a real-time analytics dashboard for IoT sensor data. The data arrives as JSON and needs to be stored in a way that supports fast ingestion and complex queries. Which database service is best suited?

A.Amazon RDS for PostgreSQL
B.Amazon DynamoDB with TTL
C.Amazon Timestream
D.Amazon Redshift
AnswerC

Amazon Timestream is purpose-built for time-series data, ingesting JSON sensor payloads via its write-optimised storage tier that automatically partitions data by time. This satisfies the requirement for fast ingestion of high-frequency IoT data, while its separate query-optimised tier enables complex analytical queries using standard SQL, addressing the need for real-time dashboarding without schema management overhead.

Why this answer

Amazon Timestream is purpose-built for time-series data, offering fast ingestion of JSON sensor data and optimized storage for time-based queries. It automatically manages retention, compression, and tiering (memory and magnetic store), enabling complex analytical queries (e.g., window functions, interpolation) without manual tuning. This makes it ideal for real-time IoT analytics dashboards.

Exam trap

The trap here is that candidates often choose Amazon DynamoDB for its fast ingestion and scalability, overlooking that complex time-series queries (e.g., moving averages, gap filling) require purpose-built time-series functions that DynamoDB lacks, while Timestream provides them natively.

How to eliminate wrong answers

Option A is wrong because Amazon RDS for PostgreSQL is a relational database optimized for OLTP workloads, not for high-velocity time-series ingestion or time-based analytical queries; it lacks automatic time-series data lifecycle management and can suffer from write contention under high-frequency sensor data. Option B is wrong because Amazon DynamoDB with TTL is a key-value and document database designed for low-latency lookups and simple queries, not for complex analytical queries over time-series data; TTL only handles data expiration, not time-based aggregation or interpolation. Option D is wrong because Amazon Redshift is a columnar data warehouse optimized for batch analytics and complex queries over large datasets, but it is not designed for real-time, high-frequency ingestion of streaming IoT data; its ingestion latency and cost model are unsuitable for per-second sensor writes.

201
MCQhard

A financial services company is designing a ledger system using Amazon QLDB. The application records transactions that must never be modified or deleted. The company expects high write throughput and needs to ensure that the ledger can handle the load without throttling. Which design consideration is MOST important to achieve this?

A.Partition the ledger table by transaction date to distribute write load.
B.Create multiple ledgers and distribute writes across them.
C.Enable auto-scaling on the ledger to handle bursts of traffic.
D.Batch multiple document inserts into a single transaction to reduce the number of transactions.
AnswerD

Batching reduces the number of transactions, helping to stay within throughput limits.

Why this answer

Amazon QLDB charges per transaction (document insert, update, or delete) and has a maximum throughput limit of 1,000 transactions per second per ledger. By batching multiple document inserts into a single transaction, you reduce the number of transactions, thereby staying within the throughput limit while still achieving high write throughput. This approach directly addresses the need to avoid throttling without sacrificing the immutability requirements of the ledger system.

Exam trap

The trap here is that candidates often assume QLDB supports auto-scaling like DynamoDB or Aurora, but QLDB has a fixed throughput limit and requires batching to handle high write loads without throttling.

How to eliminate wrong answers

Option A is wrong because QLDB is a fully managed ledger database that automatically partitions data; manual partitioning by transaction date is not supported and would not distribute write load. Option B is wrong because creating multiple ledgers increases operational complexity and does not inherently increase write throughput per ledger; QLDB's throughput limit applies per ledger, and distributing writes across ledgers would require application-level sharding, which is not a recommended design for a single ledger system. Option C is wrong because QLDB does not support auto-scaling; it has a fixed throughput limit of 1,000 transactions per second per ledger, and enabling auto-scaling is not a feature available in QLDB.

202
Multi-Selecteasy

A company is building a microservices architecture and needs a database for a service that stores JSON documents with variable schema. The database must support high availability and automatic scaling. Which TWO services meet these requirements? (Choose two.)

Select 2 answers
A.Amazon ElastiCache for Redis
B.Amazon DynamoDB
C.Amazon DocumentDB
D.Amazon Neptune
E.Amazon RDS for MySQL
AnswersB, C

DynamoDB supports JSON documents, high availability, and auto scaling.

Why this answer

Amazon DynamoDB is correct because it is a fully managed NoSQL key-value and document database that natively supports JSON documents with variable schema, offers high availability through multi-AZ replication, and provides automatic scaling via its on-demand capacity mode or auto-scaling policies. It is ideal for microservices architectures that require low-latency, serverless, and elastic throughput.

Exam trap

AWS often tests the misconception that any database supporting JSON (like MySQL with JSON data type) qualifies as a document database for variable schema workloads, but the key differentiator is automatic scaling and native document store capabilities, which DynamoDB and DocumentDB provide, while RDS does not.

203
MCQhard

A social media company uses Amazon DynamoDB to store user posts. The table has a partition key of 'user_id' and a sort key of 'post_timestamp'. Each item is about 10 KB. The application needs to retrieve all posts for a given user within a date range. The company recently added a new feature that allows users to 'like' posts, and they store the like count as an attribute in the post item. The like count is updated frequently. The application experiences high write throttling on the table. The table has 1000 WCUs provisioned. The write pattern is bursty. Which design change would MOST effectively reduce write throttling?

A.Increase the WCUs to 5000.
B.Enable DynamoDB Accelerator (DAX) to cache writes.
C.Add a random suffix to the user_id partition key to distribute writes across multiple partitions.
D.Create a Global Secondary Index (GSI) on the like count attribute.
AnswerC

Sharding spreads the write load evenly across partitions, reducing throttling.

Why this answer

The write throttling is caused by a 'hot partition' — all writes for a given user_id go to the same partition, and the bursty write pattern (e.g., many likes on a single post) exceeds the partition's 1,000 WCU limit (1,000 write capacity units per partition). Adding a random suffix to the user_id partition key distributes writes across multiple partitions, effectively increasing the write throughput for that logical user's data. This is a common design pattern for DynamoDB to handle high-traffic items without increasing provisioned capacity.

Exam trap

The trap here is that candidates often assume increasing provisioned capacity (Option A) is the universal fix for throttling, but AWS specifically tests the understanding that DynamoDB's partition-level throughput limits require data distribution changes, not just capacity increases.

How to eliminate wrong answers

Option A is wrong because simply increasing WCUs to 5000 does not solve the hot partition issue — the writes are still concentrated on a single partition key (user_id), and a single partition can only handle up to 1,000 WCUs (or 3,000 if using burst capacity), so throttling will persist. Option B is wrong because DynamoDB Accelerator (DAX) is an in-memory cache for reads, not writes — it does not absorb or buffer write requests, so it cannot reduce write throttling. Option D is wrong because creating a Global Secondary Index (GSI) on the like count attribute does not affect the base table's write capacity or partition distribution; GSIs have their own write capacity and are used for querying, not for alleviating write contention on the base table.

204
MCQhard

A company is designing a disaster recovery plan for an Amazon DynamoDB table that stores critical session data. The table is provisioned with on-demand capacity. The recovery objective is to have the data available in another AWS Region within 15 minutes of a regional outage. Which design should they choose?

A.Use DynamoDB on-demand backups and restore to another Region.
B.Use DynamoDB Streams to replicate data to a table in another Region via AWS Lambda.
C.Use DynamoDB Global Tables to replicate data across Regions.
D.Create cross-Region Read Replicas for DynamoDB.
AnswerC

Global Tables provide active-active replication across Regions.

Why this answer

DynamoDB Global Tables provide multi-Region, fully replicated tables with automatic conflict resolution, enabling active-active replication that meets the 15-minute recovery objective without manual intervention. Global Tables replicate data across Regions in sub-second latency, ensuring data availability within the required RTO during a regional outage.

Exam trap

The trap here is that candidates confuse DynamoDB Global Tables with cross-Region Read Replicas (which exist in RDS but not DynamoDB) or assume that on-demand backups can meet a 15-minute RTO, ignoring the manual restore time and lack of continuous replication.

How to eliminate wrong answers

Option A is wrong because on-demand backups are point-in-time snapshots that require manual restore to another Region, which typically takes longer than 15 minutes and does not provide continuous replication for real-time availability. Option B is wrong because DynamoDB Streams with AWS Lambda introduces eventual consistency and potential replication lag that can exceed 15 minutes, and it requires custom code for conflict resolution and error handling, making it less reliable for strict RTOs. Option D is wrong because DynamoDB does not support cross-Region Read Replicas; this feature is available in Amazon RDS (e.g., Aurora, MySQL) but not in DynamoDB, which uses Global Tables for multi-Region replication.

205
MCQhard

A gaming company uses Amazon DynamoDB to store player profiles. The table has partition key 'player_id' and sort key 'game_id'. During a new game launch, write traffic to a subset of players (influencers) spikes, causing throttling. The table uses on-demand capacity. Which solution resolves the hot key issue?

A.Increase the maximum read capacity units in the on-demand settings
B.Switch to provisioned capacity mode and increase write capacity units
C.Add a random suffix to the partition key for the hot players to distribute writes
D.Enable DynamoDB Accelerator (DAX) to cache writes
AnswerC

Shuffling hot keys across partitions resolves hot key throttling.

Why this answer

Adding a random suffix to the partition key for hot players distributes the write traffic across multiple partitions, preventing any single partition from being overwhelmed. DynamoDB's on-demand capacity mode automatically scales to handle traffic spikes, but it cannot resolve a hot key issue where all writes target the same partition key. By diversifying the partition key, writes are spread across partitions, allowing DynamoDB to utilize its full throughput capacity.

Exam trap

The trap here is that candidates often assume on-demand capacity mode automatically solves all scaling issues, but it cannot mitigate hot keys because the bottleneck is at the partition level, not the table level.

How to eliminate wrong answers

Option A is wrong because on-demand capacity mode does not have a maximum read capacity unit setting; it scales automatically based on traffic, and increasing a non-existent setting cannot fix a hot key issue. Option B is wrong because switching to provisioned capacity mode and increasing write capacity units does not address the root cause of a hot key; it only increases the overall table throughput, but a single partition still has a hard limit of 1,000 write capacity units, so throttling will persist. Option D is wrong because DynamoDB Accelerator (DAX) is an in-memory cache for reads, not writes; it cannot absorb or distribute write traffic, so it does not solve write throttling due to a hot key.

206
MCQhard

A financial services company uses Amazon DynamoDB to store transaction records. The table has a partition key of 'AccountId' and a sort key of 'TransactionDate'. The company needs to run analytical queries that aggregate transactions by account and month. Currently, queries are slow due to full table scans. Which design change will improve query performance most effectively?

A.Add DynamoDB Accelerator (DAX) to the table.
B.Change the table's sort key from TransactionDate to Month.
C.Enable DynamoDB Streams and process the stream with AWS Lambda to pre-aggregate results.
D.Create a Global Secondary Index (GSI) with partition key AccountId and sort key Month.
AnswerD

Allows efficient aggregation queries using the GSI.

Why this answer

Creating a Global Secondary Index (GSI) with partition key AccountId and sort key Month allows the analytical queries to efficiently retrieve aggregated data by account and month without scanning the entire base table. The GSI reorganizes data by month, enabling DynamoDB to use the sort key for range queries and avoid full table scans, which directly addresses the performance issue.

Exam trap

The trap here is that candidates often confuse caching solutions like DAX with query optimization, not realizing that DAX does not change the access pattern or eliminate the need for scans when the query lacks an appropriate index.

How to eliminate wrong answers

Option A is wrong because DynamoDB Accelerator (DAX) is an in-memory cache that speeds up read-heavy workloads but does not change the underlying data model or query pattern; it would still require full table scans for analytical queries that aggregate by month. Option B is wrong because changing the sort key from TransactionDate to Month would break existing query patterns that rely on precise date ranges and would not eliminate the need for scans if the partition key alone is used; it also does not support efficient aggregation across all accounts. Option C is wrong because enabling DynamoDB Streams and processing with Lambda to pre-aggregate results introduces eventual consistency and operational complexity, and it does not improve the performance of the existing query directly; it is a workaround for real-time aggregation, not a design change for the current query.

207
Multi-Selectmedium

A company is designing a database for a global e-commerce platform that requires low-latency reads and writes from multiple AWS Regions. The database must support ACID transactions and complex queries with joins. Which TWO services should they consider? (Choose two.)

Select 2 answers
A.Amazon DynamoDB with Global Tables
B.Amazon ElastiCache for Redis with global datastore
C.Amazon RDS for MySQL with cross-Region read replicas
D.Amazon Aurora with Aurora Global Database
E.Amazon Redshift with cross-Region snapshots
AnswersC, D

Amazon RDS for MySQL with cross-Region read replicas supports ACID and joins, but writes are only in one region, failing the requirement for low-latency writes from multiple regions.

Why this answer

Both Amazon Aurora with Aurora Global Database and Amazon RDS for MySQL with cross-Region read replicas support ACID transactions and complex queries with joins. They can provide low-latency reads from multiple regions through read replicas in each region, though writes are directed to a single primary region, which may impact write latency from non-primary regions. Amazon DynamoDB Global Tables provide multi-region writes but do not support joins for complex queries, so they cannot fully meet the requirements.

ElastiCache Redis and Amazon Redshift lack the necessary ACID and join capabilities.

Exam trap

Candidates often select DynamoDB Global Tables because it supports multi-region writes, but overlook the requirement for complex joins. The correct options for complex queries are either Aurora Global Database or RDS with cross-region read replicas, even though writes are limited to one region. This highlights the trade-off between global write scalability and relational features.

208
Multi-Selectmedium

A company is designing a database solution for a global user base that requires single-digit millisecond read latency for user profile data. The data is eventually consistent and can tolerate a few seconds of staleness. Which TWO AWS services or features should be combined to achieve this latency?

Select 2 answers
A.Amazon ElastiCache for Redis with global datastore.
B.Amazon DynamoDB Global Tables.
C.Amazon CloudFront with a custom origin pointing to DynamoDB.
D.Amazon RDS for MySQL with cross-Region read replicas.
E.Amazon Aurora Global Database.
AnswersB, C

Global Tables replicate data across regions, enabling low-latency local reads.

Why this answer

Amazon DynamoDB Global Tables provides a fully managed, multi-Region, multi-active database that replicates data across AWS Regions with sub-second latency, enabling single-digit millisecond reads for user profile data. Combined with Amazon CloudFront as a CDN, you can cache DynamoDB responses at edge locations, further reducing read latency for a global user base while tolerating eventual consistency and a few seconds of staleness.

Exam trap

The trap here is that candidates may assume Amazon ElastiCache or Aurora Global Database are required for single-digit millisecond latency, overlooking how DynamoDB Global Tables combined with CloudFront caching can achieve this without the complexity of managing a separate cache layer or dealing with cross-Region replication lag.

209
MCQeasy

A company is building a document management system where each document can have multiple tags and users need to query documents by any combination of tags. The number of tags per document is up to 20, and the total number of documents is expected to be 50 million. Which database design is most appropriate for this flexible tag-based querying?

A.Amazon DynamoDB with a global secondary index on the tag attribute
B.Amazon RDS for MySQL with a normalized schema
C.Amazon Neptune
D.Amazon ElastiCache for Memcached
AnswerA

DynamoDB scales easily and supports flexible tag queries.

Why this answer

Amazon DynamoDB with a global secondary index on the tag attribute is the most appropriate design because it supports flexible, low-latency queries on any combination of tags at scale. DynamoDB's single-table design with a GSI allows you to query documents by a specific tag efficiently, and by using composite sort keys or multiple GSIs, you can support queries on multiple tag combinations without the overhead of joins or schema normalization. This approach handles 50 million documents with up to 20 tags per document while maintaining predictable performance.

Exam trap

The trap here is that candidates often choose Amazon RDS for MySQL (Option B) because they assume a normalized relational schema is the 'correct' way to handle many-to-many relationships, but they fail to consider the performance and scalability challenges of multi-table joins at 50 million documents with flexible tag queries.

How to eliminate wrong answers

Option B is wrong because Amazon RDS for MySQL with a normalized schema would require complex multi-table joins (e.g., document, tag, document_tag junction table) to query by tag combinations, which becomes slow and unscalable at 50 million documents and 20 tags per document, leading to performance bottlenecks and the need for extensive indexing and query optimization. Option C is wrong because Amazon Neptune is a graph database designed for highly connected data and complex graph traversals (e.g., social networks, recommendation engines), which is overkill and unnecessarily complex for simple tag-based document queries that do not require graph-specific operations like shortest path or pattern matching. Option D is wrong because Amazon ElastiCache for Memcached is a caching layer, not a persistent database; it lacks query capabilities for tag-based filtering and cannot serve as the primary data store for 50 million documents with flexible query requirements.

210
MCQeasy

A startup is building a social media application that requires a database to store user relationships (followers, following) and support graph queries. The data volume is expected to grow to tens of terabytes. Which AWS database service is most suitable for this workload?

A.Amazon RDS for MySQL with self-joins.
B.Amazon Redshift.
C.Amazon DynamoDB with adjacency list design.
D.Amazon Neptune.
AnswerD

Neptune is a purpose-built graph database.

Why this answer

Amazon Neptune is a fully managed graph database service optimized for storing and querying highly connected data, such as social media user relationships (followers, following). It supports both property graph and RDF models, enabling efficient graph traversal queries using Gremlin or SPARQL, which is ideal for this workload. Neptune scales to tens of terabytes and provides low-latency query performance for complex graph patterns, making it the most suitable choice.

Exam trap

The trap here is that candidates often choose DynamoDB (Option C) because they associate it with NoSQL scalability, but they overlook that adjacency list designs in DynamoDB require multiple queries and client-side logic for graph traversals, making it unsuitable for deep or multi-hop relationship queries at scale.

How to eliminate wrong answers

Option A is wrong because Amazon RDS for MySQL with self-joins is a relational database that does not natively support graph traversal operations; self-joins become exponentially slower and more complex as the depth of relationships increases, leading to poor performance at tens of terabytes. Option B is wrong because Amazon Redshift is a columnar data warehouse designed for analytical queries on large datasets, not for real-time graph queries or transactional relationship storage, and it lacks native graph traversal capabilities. Option C is wrong because Amazon DynamoDB with adjacency list design can model simple one-to-many relationships but is not optimized for multi-hop graph traversals; queries like 'find followers of followers' require multiple round trips and client-side joins, resulting in high latency and complexity at scale.

211
MCQmedium

A company uses Amazon DynamoDB for a session management workload. The access pattern is random and requires single-digit millisecond latency. The table has a read capacity of 5000 RCU. During peak hours, read requests occasionally exceed this capacity, causing throttling. Which design change is most appropriate to handle traffic spikes?

A.Switch to DynamoDB on-demand mode.
B.Add a global secondary index with different partition key.
C.Enable DynamoDB auto scaling for reads.
D.Add a DAX cluster to cache read requests.
AnswerC

Dynamically adjusts capacity to handle spikes.

Why this answer

DynamoDB auto scaling allows the table to dynamically adjust its provisioned read capacity (RCU) in response to traffic spikes, preventing throttling while maintaining single-digit millisecond latency. This is the most appropriate design change for a session management workload with random access patterns, as it handles occasional bursts without requiring manual intervention or architectural changes.

Exam trap

The trap here is that candidates often choose DAX (Option D) thinking it solves throttling by caching, but DAX only reduces read load if the same items are frequently requested—random access patterns with low cache hit rates make DAX ineffective for preventing throttling, and it does not increase the table's RCU limit.

How to eliminate wrong answers

Option A is wrong because switching to DynamoDB on-demand mode would eliminate throttling but introduces unpredictable costs and may not be cost-effective for a workload with a baseline of 5000 RCU and only occasional spikes; on-demand is designed for unpredictable or new workloads, not for optimizing cost in a known pattern. Option B is wrong because adding a global secondary index (GSI) with a different partition key does not address read capacity throttling on the base table; GSIs have their own read/write capacity and are used for alternative query patterns, not for scaling existing read throughput. Option D is wrong because adding a DAX cluster caches read requests to reduce latency and offload reads from the table, but it does not increase the provisioned read capacity; if the cache misses or the DAX cluster itself is overwhelmed, throttling can still occur on the underlying table.

212
MCQmedium

A company is running a MySQL database on Amazon RDS for a customer relationship management (CRM) application. The database has a table named 'contacts' with over 100 million rows. The application frequently runs queries to find contacts by email address. The email column has a B-tree index. Recently, the application started experiencing slow query performance. The team checked CloudWatch metrics and saw that the ReadIOPS for the RDS instance is consistently at 80% of the provisioned IOPS limit. The instance type is db.r5.large with 3000 provisioned IOPS (gp2). The buffer pool hit ratio is 95%. What is the most cost-effective design change to improve query performance?

A.Upgrade the RDS instance to db.r5.xlarge with 6000 provisioned IOPS.
B.Migrate the contacts table to Amazon DynamoDB with email as partition key.
C.Implement an Amazon OpenSearch Service cluster for email search.
D.Increase the buffer pool size by changing to a memory-optimized instance.
AnswerA

Increases IOPS capacity, reducing IO bottleneck.

Why this answer

Upgrading to a db.r5.xlarge with 6,000 provisioned IOPS (gp2) doubles the IOPS capacity, directly addressing the high ReadIOPS utilization (80%) without requiring application changes. This is the most cost-effective solution as it leverages the existing RDS infrastructure. Option B is wrong because migrating to DynamoDB would require significant application rework and is not necessary when the bottleneck is IOPS.

Option C is wrong because OpenSearch adds unnecessary complexity and cost for a simple email lookup. Option D is wrong because the buffer pool hit ratio is already at 95%, indicating that increasing memory would yield minimal benefit.

213
MCQeasy

A startup is building a mobile application that needs to store user profiles and preferences. The data is schema-less and will grow rapidly. The application requires single-digit millisecond latency for reads and writes. Which AWS database should they choose?

A.Amazon Aurora (MySQL compatible)
B.Amazon Redshift
C.Amazon RDS for SQL Server
D.Amazon DynamoDB
AnswerD

DynamoDB supports schema-less design and low-latency access.

Why this answer

Amazon DynamoDB is a fully managed NoSQL key-value and document database that delivers single-digit millisecond latency at any scale. It is schema-less, making it ideal for storing user profiles and preferences that have varying attributes, and it automatically scales to handle rapid growth without downtime or performance degradation.

Exam trap

The trap here is that candidates often confuse relational databases like Aurora or RDS with NoSQL requirements, assuming that any 'fast' database can handle schema-less data, but DynamoDB's key-value design and automatic scaling are specifically required for this use case.

How to eliminate wrong answers

Option A is wrong because Amazon Aurora (MySQL compatible) is a relational database with a fixed schema, requiring predefined tables and columns, which conflicts with the schema-less requirement; it also does not natively provide single-digit millisecond latency for all access patterns under high throughput. Option B is wrong because Amazon Redshift is a petabyte-scale data warehouse optimized for complex analytical queries (OLAP), not for low-latency reads and writes of individual user profiles (OLTP). Option C is wrong because Amazon RDS for SQL Server is a relational database with a rigid schema and is not designed for schema-less data; it also cannot guarantee single-digit millisecond latency under rapid growth and high concurrency without significant over-provisioning.

214
MCQhard

A company runs a critical e-commerce platform on Amazon Aurora MySQL. The database is 2 TB and experiences a sudden spike in write latency during flash sales. The application uses auto-generated UUIDs as primary keys. The CPU utilization on the writer instance is 80%, and the read replicas show low utilization. Write latency has increased from 5 ms to 200 ms. The company needs to reduce write latency with minimal application changes. Which course of action is MOST effective?

A.Implement sharding across multiple Aurora clusters.
B.Change the primary key to an auto-increment BIGINT and recreate indexes.
C.Add more read replicas and redirect write-heavy queries to replicas.
D.Upgrade the writer instance to a larger instance type with more IOPS.
AnswerB

Sequential keys reduce index page splits, improving write performance.

Why this answer

B is correct because UUID primary keys cause random writes that fragment the B-tree index, leading to frequent page splits and high write latency. Changing to an auto-increment BIGINT allows sequential writes, which fill index pages contiguously and reduce the write amplification that drives latency from 5 ms to 200 ms. This requires no application logic changes beyond the schema migration, making it the most effective minimal-change solution.

Exam trap

The trap here is that candidates assume scaling compute or storage (Option D) is the universal fix for write latency, but the exam specifically tests the impact of primary key design on index write amplification in Aurora MySQL.

How to eliminate wrong answers

Option A is wrong because sharding across multiple Aurora clusters adds significant application complexity (e.g., distributed transactions, cross-cluster joins) and does not address the root cause of random-write overhead from UUIDs. Option C is wrong because read replicas cannot handle write traffic; they only serve read queries, so redirecting write-heavy queries to replicas is impossible and would not reduce write latency on the writer instance. Option D is wrong because upgrading the instance type with more IOPS only masks the symptom of high write latency; it does not fix the underlying index fragmentation caused by UUID primary keys, so the latency will persist after the upgrade.

215
Multi-Selectmedium

Which THREE factors should be considered when selecting a database for a time-series workload (e.g., IoT sensor data) that requires high write throughput and efficient data retention?

Select 3 answers
A.Normalize the schema to reduce data duplication.
B.Use Amazon RDS Proxy to manage database connections.
C.Configure automatic data expiration using TTL (Time-to-Live).
D.Partition the table by time intervals (e.g., hourly or daily).
E.Use Amazon Timestream for its built-in time-series optimizations.
AnswersC, D, E

TTL automates data retention.

Why this answer

TTL (Time-to-Live) is a critical feature for time-series workloads, allowing automatic deletion of data that has exceeded a specified retention period. This reduces storage costs and manual maintenance overhead, which is essential for high-volume IoT sensor data where old data loses value over time.

Exam trap

The trap here is that candidates may confuse general database best practices (like normalization or connection pooling) with the specialized optimizations required for time-series workloads, overlooking that TTL and time-based partitioning are the key architectural patterns for write-heavy, retention-focused IoT data.

216
MCQeasy

A startup is building a real-time leaderboard for a mobile game using Amazon DynamoDB. The leaderboard must update frequently and support global access with low latency. Which database design approach is most suitable?

A.Use Amazon DynamoDB global tables with appropriate partition key design.
B.Use Amazon ElastiCache for Redis with replication across Regions.
C.Use Amazon Aurora Global Database with a single writer and multiple readers.
D.Use Amazon S3 with event notifications to update a leaderboard file.
AnswerA

Provides low-latency global access and high throughput.

Why this answer

Amazon DynamoDB global tables provide multi-Region, fully managed, multi-master replication, which is ideal for a real-time leaderboard requiring frequent updates and low-latency global access. By designing an appropriate partition key (e.g., game ID or time-based composite key), you can distribute write traffic evenly and avoid hot partitions, ensuring consistent performance under high update frequency.

Exam trap

The trap here is that candidates often assume a caching layer like ElastiCache is always the best for low-latency global access, but they overlook the need for multi-Region write capability and the inherent limitations of Redis cross-Region replication for high-frequency updates.

How to eliminate wrong answers

Option B is wrong because Amazon ElastiCache for Redis with replication across Regions is not natively multi-master; cross-Region replication requires additional tooling (e.g., Global Datastore for Redis) and does not offer the same strong consistency or automatic conflict resolution as DynamoDB global tables for frequent writes. Option C is wrong because Amazon Aurora Global Database is designed for relational workloads with a single writer and multiple readers, which cannot handle the high-velocity, concurrent writes required by a real-time leaderboard without introducing write bottlenecks and latency. Option D is wrong because Amazon S3 with event notifications is not a real-time database; it introduces significant latency for updates and lacks the low-latency query capabilities needed for a live leaderboard, making it unsuitable for frequent updates and global access.

217
MCQhard

A company runs a time-series application on Amazon RDS for PostgreSQL. The table 'events' has 500 million rows and is queried by event_time and event_type. Queries for the last hour are slow despite indexing. Which design change would most improve query performance?

A.Add a composite index on (event_type, event_time)
B.Partition the table by month using PostgreSQL declarative partitioning
C.Migrate to Amazon DynamoDB with TTL
D.Upgrade to a larger RDS instance
AnswerB

Partition pruning limits scans to relevant partitions.

Why this answer

Partitioning the 'events' table by month using PostgreSQL declarative partitioning allows the query planner to prune partitions that do not contain data for the last hour. This dramatically reduces the number of rows scanned, even with a large table of 500 million rows, and directly addresses the slow query performance for time-range queries. Indexing alone cannot overcome the overhead of scanning a massive monolithic table for a narrow time window.

Exam trap

The trap here is that candidates often assume adding a composite index is sufficient for all query patterns, but for time-series data with a large table and narrow time-range queries, partition pruning provides a far more significant reduction in scanned data than any index can achieve.

How to eliminate wrong answers

Option A is wrong because adding a composite index on (event_type, event_time) may improve some queries but does not solve the fundamental problem of scanning a 500-million-row table for a one-hour time range; the index still has to traverse a large B-tree and fetch rows from the heap, leading to significant I/O. Option C is wrong because migrating to DynamoDB with TTL is designed for automatic item expiration, not for improving query performance on time-series data; DynamoDB lacks native time-range query optimization like partition pruning and would require careful design of partition keys and secondary indexes to avoid hot partitions. Option D is wrong because upgrading to a larger RDS instance provides more CPU and memory but does not change the fact that queries must scan the entire table or a large index; it is a vertical scaling approach that does not address the architectural inefficiency of a monolithic table for time-based queries.

218
MCQmedium

A company runs an Oracle database on Amazon RDS. The database is used by multiple applications, and the company needs to capture all data modification language (DML) changes for auditing. Which solution should be used?

A.Use AWS CloudTrail to capture database events.
B.Enable Oracle Flashback and store the flashback logs.
C.Install Oracle Audit Vault on the RDS instance.
D.Use AWS DMS with change data capture (CDC) to stream changes to Amazon S3.
AnswerD

DMS CDC captures DML changes and can write to S3.

Why this answer

AWS DMS with change data capture (CDC) can continuously capture DML changes from an Oracle RDS instance and stream them to Amazon S3 in a format such as Parquet or CSV. This provides a durable, queryable audit trail of all data modifications without requiring additional Oracle licensing or impacting database performance. CloudTrail captures API-level events, not DML changes, and Oracle Flashback and Audit Vault are not fully supported or manageable on Amazon RDS.

Exam trap

The trap here is that candidates confuse AWS CloudTrail (API auditing) with database-level DML auditing, or assume that Oracle-specific features like Flashback or Audit Vault are fully functional on RDS, when in fact RDS restricts OS and software installation, making DMS CDC the only viable managed solution.

How to eliminate wrong answers

Option A is wrong because AWS CloudTrail records AWS API calls (e.g., RDS instance creation, modification) but does not capture database-level DML operations like INSERT, UPDATE, or DELETE. Option B is wrong because Oracle Flashback is a feature for point-in-time recovery and historical queries, not for continuous auditing of DML changes; additionally, flashback logs are stored internally and cannot be easily exported to an external audit store. Option C is wrong because Oracle Audit Vault requires installation of an agent on the database host and is not supported on Amazon RDS, which does not allow custom software installation or OS-level access.

219
Multi-Selecthard

A company runs a critical Oracle database on Amazon RDS. They need to implement a disaster recovery strategy that provides the lowest possible recovery point objective (RPO) and recovery time objective (RTO) across AWS Regions. Which TWO actions should they take? (Choose two.)

Select 2 answers
A.Configure cross-Region automated backups to copy backups to another Region.
B.Configure an AWS DMS task to replicate data from the primary RDS Oracle instance to an RDS Oracle instance in another Region.
C.Enable Multi-AZ on the primary RDS instance.
D.Create a cross-Region read replica of the Oracle DB instance.
E.Use Amazon Aurora Global Database to replicate data across Regions.
AnswersA, B

Cross-Region automated backups provide an RPO of a few minutes and allow restore in the secondary Region.

Why this answer

Cross-Region automated backups copy RDS snapshots and transaction logs to a secondary Region, enabling point-in-time recovery with an RPO of minutes and an RTO of hours (depending on snapshot restore time). Option B is correct because AWS DMS with ongoing replication (change data capture) can continuously replicate Oracle data to a standby instance in another Region, achieving an RPO of seconds and an RTO of minutes by failing over to the replicated instance.

Exam trap

The trap here is that candidates often confuse Multi-AZ with cross-Region DR, or incorrectly assume Oracle RDS supports cross-Region read replicas like MySQL or PostgreSQL, but Oracle RDS does not offer that feature.

220
MCQhard

A company is designing a multi-region active-active application that requires low-latency reads and writes across regions. The database must support conflict resolution. Which database should be used?

A.Amazon RDS Multi-AZ
B.Amazon DynamoDB Global Tables
C.Amazon Redshift
D.Amazon Aurora Global Database
AnswerB

DynamoDB global tables offer active-active replication with eventual consistency and conflict resolution.

Why this answer

Amazon DynamoDB Global Tables is the correct choice because it provides a fully managed, multi-region, multi-active database that replicates data across regions with eventual consistency, supporting low-latency reads and writes. It includes built-in conflict resolution using a last-writer-wins (LWW) mechanism based on timestamps, which meets the requirement for conflict resolution in an active-active architecture.

Exam trap

The trap here is that candidates often confuse Amazon Aurora Global Database with an active-active solution, but it is actually active-passive with a single write region, whereas DynamoDB Global Tables supports multi-region writes with automatic conflict resolution.

How to eliminate wrong answers

Option A is wrong because Amazon RDS Multi-AZ is a single-region, high-availability feature that provides a standby replica in a different Availability Zone, not multi-region active-active capability, and it does not support conflict resolution. Option C is wrong because Amazon Redshift is a data warehouse optimized for analytical queries, not low-latency transactional reads and writes across regions, and it lacks conflict resolution mechanisms. Option D is wrong because Amazon Aurora Global Database is designed for cross-region replication but supports only one primary region for writes (active-passive), not active-active, and it does not provide built-in conflict resolution for concurrent writes.

221
MCQhard

A company runs an e-commerce platform on Amazon RDS for MySQL with a Multi-AZ deployment. The database has a table 'orders' with 50 million rows. During Black Friday sales, the application experiences severe slowdowns. Analysis shows that the CPU utilization is at 90% and there are many slow queries that perform full table scans on the 'orders' table. The development team has already added indexes on the most queried columns, but the problem persists. The database specialist suspects that the issue is not solely due to missing indexes. They notice that the queries often filter on a combination of 'order_date', 'customer_id', and 'status', and that the data distribution is heavily skewed: 80% of orders are 'completed' status. The 'order_date' range is typically the last 30 days. What should the database specialist do to improve query performance?

A.Partition the 'orders' table by 'status' and 'order_date' and create covering indexes on common query patterns.
B.Create multiple read replicas and distribute read traffic.
C.Implement an in-memory caching layer using Amazon ElastiCache for frequently accessed data.
D.Upgrade the RDS instance to a larger instance class with more vCPUs and memory.
AnswerA

Partitioning reduces the data scanned, and covering indexes speed up queries without accessing the table.

Why this answer

Partitioning the 'orders' table by 'status' and 'order_date' can significantly reduce the amount of data scanned, as queries often filter on these columns. With 80% of orders being 'completed', partitioning by status allows queries for non-completed statuses to skip most rows, and range partitioning by order_date (e.g., monthly) further limits scans to relevant time periods. Adding covering indexes on common query patterns (e.g., (status, order_date, customer_id)) can make these partition scans index-only.

Option B (read replicas) offloads read traffic but does not fix the slow queries themselves—they would still perform full scans on the replicas. Option C (caching) helps with repeated queries but not with ad-hoc analytical scans that still hit the database. Option D (vertical scaling) provides temporary relief but does not address the root cause of unnecessary full table scans.

222
MCQhard

A gaming company uses Amazon DynamoDB to store player scores. The table has a partition key of 'game_id' and a sort key of 'player_id'. The application needs to retrieve the top 10 players for a given game_id based on score (stored as an attribute). The game_id has high cardinality. The team wants to avoid full table scans. Which design pattern is MOST efficient?

A.Query the table by game_id and sort the results in the application
B.Use a Scan operation with a filter expression and limit 10
C.Create a local secondary index with partition key game_id and sort key score
D.Create a global secondary index with partition key game_id and sort key score
AnswerD

Query the GSI with ScanIndexForward=false and limit 10 for fast retrieval.

Why this answer

A global secondary index (GSI) with partition key 'game_id' and sort key 'score' allows DynamoDB to efficiently retrieve the top 10 players for a given game_id by querying the index with the Query API, using ScanIndexForward=false to get items in descending order of score, and Limit=10. This avoids full table scans and leverages GSI's separate throughput capacity. Option C (LSI) could theoretically be used if the table was created with the LSI, but GSIs are preferred because they can be added after table creation, have dedicated throughput, and are more scalable.

Additionally, querying an LSI still consumes base table capacity, which may affect performance.

Exam trap

Candidates may think a Local Secondary Index (LSI) with sort key 'score' is a good fit because it shares the same partition key 'game_id' and allows ordering by score. However, LSIs share throughput capacity with the base table and have a 10 GB storage limit per partition key value. For high-cardinality game_id values with many players, the 10 GB limit can be restrictive, and the shared throughput may lead to throttling.

A Global Secondary Index (GSI) provides dedicated throughput and is the recommended pattern for top-N queries.

How to eliminate wrong answers

Option A is wrong because querying the table by game_id and sorting results in the application requires retrieving all players for that game, which is inefficient for large datasets and does not scale. Option B is wrong because a Scan operation with a filter expression and Limit=10 still reads the entire table (up to 1 MB per scan) before applying the filter, incurring high read costs and latency. Option C is wrong because a local secondary index (LSI) shares the table's partition key but cannot be queried independently; it requires the same partition key and sort key combination as the base table, and the LSI's sort key (score) cannot be used to retrieve top N items without scanning all items for that partition key.

223
Multi-Selecthard

Which THREE design patterns are commonly used to optimize DynamoDB performance for write-heavy workloads?

Select 3 answers
A.Using DynamoDB adaptive capacity to handle unbalanced access patterns.
B.Using sparse indexes on rarely accessed attributes.
C.Batch writes using BatchWriteItem.
D.Write sharding using a random suffix on the partition key.
E.Using global tables to distribute writes across regions.
AnswersA, C, D

Adaptive capacity automatically rebalances partitions to handle hot spots.

Why this answer

DynamoDB adaptive capacity automatically isolates heavily accessed partitions, allowing them to consume more throughput without throttling other partitions. This is critical for write-heavy workloads with uneven access patterns, as it prevents hot partitions from degrading overall performance.

Exam trap

The trap here is that candidates may confuse global tables (Option E) as a write optimization technique, but it is primarily a replication feature for availability and read performance, not a direct write throughput optimization.

224
MCQeasy

What is the purpose of the 'TimeToLiveSpecification' in this template?

A.It enables DynamoDB to automatically delete items after the specified timestamp
B.It enforces that the 'expire_time' attribute must be unique
C.It automatically updates the 'expire_time' attribute when an item is read
D.It creates a backup of items that have expired
AnswerA

TTL deletes items when the timestamp is reached.

Why this answer

The 'TimeToLiveSpecification' in an AWS DynamoDB CloudFormation template enables DynamoDB's Time to Live (TTL) feature, which automatically deletes items when the current time exceeds the epoch timestamp value stored in the specified attribute (e.g., 'expire_time'). This is a cost-effective way to manage data retention without requiring custom delete logic or additional write capacity.

Exam trap

The trap here is that candidates confuse TTL with a feature that actively manages or updates timestamps, when in reality TTL is a passive, background deletion mechanism that only reads the existing attribute value and never modifies it.

How to eliminate wrong answers

Option B is wrong because TTL does not enforce uniqueness on the 'expire_time' attribute; DynamoDB only uses the attribute's value to determine expiration, and multiple items can share the same timestamp. Option C is wrong because TTL never automatically updates the 'expire_time' attribute when an item is read; it is a passive deletion mechanism based solely on the stored timestamp. Option D is wrong because TTL does not create backups of expired items; expired items are permanently deleted within 48 hours of expiration, and you must use DynamoDB Streams or separate backup mechanisms to capture them before deletion.

225
MCQmedium

A company is migrating an on-premises MongoDB database to AWS. The database stores JSON documents for a content management system. The workload requires read-after-write consistency and automatic scaling. Which AWS database service is MOST appropriate?

A.Amazon ElastiCache for Redis
B.Amazon DynamoDB
C.Amazon RDS for PostgreSQL
D.Amazon DocumentDB
AnswerD

DocumentDB is MongoDB-compatible, provides read-after-write consistency, and scales automatically.

Why this answer

Amazon DocumentDB is the most appropriate choice because it is a fully managed, MongoDB-compatible document database that natively stores JSON documents, supports read-after-write consistency via its default session consistency model, and provides automatic scaling of storage (up to 64 TB) and compute resources. It directly replaces on-premises MongoDB workloads without requiring schema changes or application rewrites, making it ideal for a content management system.

Exam trap

The trap here is that candidates often choose DynamoDB (Option B) because it is a NoSQL document database with automatic scaling, but they overlook the requirement for MongoDB compatibility and read-after-write consistency, which DynamoDB does not provide by default and requires additional configuration, whereas DocumentDB is purpose-built for MongoDB workloads with strong consistency out of the box.

How to eliminate wrong answers

Option A is wrong because Amazon ElastiCache for Redis is an in-memory key-value store, not a document database; it does not natively support JSON document storage with MongoDB-compatible querying, and its eventual consistency model (with optional strong consistency via WAIT command) is not designed for persistent, read-after-write consistent document workloads. Option B is wrong because Amazon DynamoDB is a key-value and document database but uses a different API and consistency model (eventually consistent reads by default, with strongly consistent reads available at additional cost); it lacks MongoDB wire protocol compatibility, requiring application refactoring. Option C is wrong because Amazon RDS for PostgreSQL is a relational database that stores data in tables with a fixed schema, not as JSON documents; while it supports JSONB, it does not provide MongoDB-compatible APIs or automatic scaling of storage without manual intervention, and it requires schema migration from MongoDB's document model.

← PreviousPage 3 of 6 · 423 questions totalNext →

Ready to test yourself?

Try a timed practice session using only Db Design questions.