Courseiva

CCNA Data Store Management Questions

75 of 442 questions · Page 1/6 · Data Store Management topic · Answers revealed

1
MCQeasy

A company is running a production database on Amazon RDS for PostgreSQL. The database experiences high read traffic from multiple application servers. Which data store management strategy would reduce the load on the primary database instance?

A.Enable DynamoDB Accelerator (DAX) for the database.
B.Enable Multi-AZ deployment for automatic failover.
C.Create an RDS Read Replica in the same region.
D.Use Amazon ElastiCache to cache query results.
AnswerC

Read Replicas allow offloading read queries, reducing load on the primary.

Why this answer

Creating an RDS Read Replica in the same region offloads read-heavy traffic from the primary PostgreSQL instance by providing a separate, read-only copy of the database. Application servers can direct SELECT queries to the Read Replica, reducing the primary instance's CPU and I/O load without affecting write performance. This is the most direct and cost-effective strategy for scaling read capacity in Amazon RDS for PostgreSQL.

Exam trap

The trap here is that candidates often confuse Multi-AZ (which is for failover, not read scaling) with Read Replicas, or they assume ElastiCache is the only caching option, overlooking that RDS Read Replicas are a managed, database-level solution for read offloading without application code changes.

How to eliminate wrong answers

Option A is wrong because DynamoDB Accelerator (DAX) is an in-memory cache for Amazon DynamoDB, a NoSQL database, and cannot be used to cache or offload queries from Amazon RDS for PostgreSQL. Option B is wrong because Multi-AZ deployment provides high availability and automatic failover by maintaining a standby replica in another Availability Zone, but it does not serve read traffic or reduce load on the primary instance. Option D is wrong because while ElastiCache can cache query results to reduce read load, it requires application-level changes to implement caching logic and does not provide a full database replica; the question asks for a data store management strategy, and a Read Replica is a more native and simpler solution for offloading read traffic from RDS.

2
MCQmedium

A company uses Amazon Kinesis Data Firehose to deliver streaming data to an Amazon S3 bucket. The data is JSON and each record is about 2 KB. The delivery stream is configured to buffer incoming data to 5 MB or 60 seconds, whichever comes first. The data engineering team notices that the S3 bucket contains many small files (average 2 MB), which makes subsequent processing inefficient. They need to reduce the number of small files without increasing the latency beyond 5 minutes. Which solution should they implement?

A.Enable compression (GZIP) on the delivery stream.
B.Increase the buffer size to 50 MB and the buffer interval to 300 seconds.
C.Use a Lambda function to merge small files after delivery.
D.Decrease the buffer size to 1 MB and the buffer interval to 60 seconds.
AnswerB

Larger buffer creates larger files within latency limit.

Why this answer

Increasing the buffer size to 50 MB and the buffer interval to 300 seconds directly addresses the root cause: the current 5 MB buffer size triggers a flush too frequently, producing many 2 MB files. By raising the buffer size to 50 MB, each flush will contain more data, resulting in larger S3 objects (up to ~50 MB uncompressed), while the 300-second interval ensures latency stays within the 5-minute requirement. This reduces the number of small files without requiring additional services or post-processing.

Exam trap

The trap here is that candidates often assume compression (Option A) reduces file count, but compression only reduces file size, not the number of files; the real issue is the flush frequency controlled by buffer size and interval.

How to eliminate wrong answers

Option A is wrong because enabling GZIP compression reduces the storage size of each file but does not change the buffer size or flush behavior; the delivery stream will still flush at 5 MB or 60 seconds, producing the same number of small files (just compressed). Option C is wrong because using a Lambda function to merge small files after delivery adds complexity, cost, and latency (Lambda invocation delays, S3 event processing), and does not address the root cause of premature flushes; it also violates the goal of not increasing latency beyond 5 minutes due to the merging overhead. Option D is wrong because decreasing the buffer size to 1 MB and keeping the buffer interval at 60 seconds would make the problem worse, producing even smaller files (average ~1 MB) and more frequent flushes, increasing the number of small files.

3
Multi-Selecthard

A company uses Amazon DynamoDB for a gaming application that requires single-digit millisecond read and write latencies. The application experiences throttling on the 'GameScores' table during peak hours. The table has a partition key of 'game_id' and a sort key of 'player_id'. The data engineer needs to improve performance without changing the table's provisioned capacity. Which THREE actions should the engineer take? (Choose THREE.)

Select 3 answers
A.Enable DynamoDB adaptive capacity to allow more throughput per partition.
B.Enable DynamoDB auto scaling to adjust capacity based on traffic patterns.
C.Add a Global Secondary Index (GSI) on a different partition key to offload reads.
D.Implement DynamoDB Accelerator (DAX) for caching frequent reads.
E.Increase the read capacity units (RCUs) to twice the peak observed value.
AnswersB, C, D

Auto scaling prevents throttling by adjusting capacity automatically.

Why this answer

DynamoDB auto scaling automatically adjusts the provisioned read and write capacity based on actual traffic patterns, preventing throttling during peak hours without manual intervention. This allows the table to handle bursts while maintaining single-digit millisecond latencies, as long as the traffic stays within the auto scaling limits.

Exam trap

The trap here is that candidates may confuse adaptive capacity with auto scaling, or think that increasing provisioned capacity is the only solution, but the question explicitly prohibits changing provisioned capacity, making options that alter RCUs or WCUs incorrect.

4
Multi-Selecteasy

Which TWO features of Amazon S3 help protect data from accidental deletion or modification? (Choose two.)

Select 2 answers
A.Lifecycle policies
B.Default encryption
C.S3 MFA Delete
D.S3 Object Versioning
E.Cross-Region Replication
AnswersC, D

MFA Delete requires additional authentication for deletions.

Why this answer

C is correct because S3 MFA Delete requires multi-factor authentication for permanent deletion of objects or suspension of versioning, adding a critical layer of protection against accidental or malicious deletions. D is correct because S3 Object Versioning preserves every version of an object, allowing recovery from accidental overwrites or deletions by restoring a previous version.

Exam trap

The trap here is that candidates often confuse data protection features (like encryption or replication) with deletion prevention, mistakenly selecting Lifecycle policies or Cross-Region Replication because they think 'protection' includes backup or security, when the question specifically asks about preventing accidental deletion or modification.

5
Multi-Selectmedium

A company is designing a disaster recovery strategy for an Amazon RDS for SQL Server database. The database must be recoverable in another AWS region within 15 minutes of a regional outage. Which TWO actions should the data engineer take?

Select 2 answers
A.Enable Multi-AZ deployment on the primary instance.
B.Configure automated backups to copy to the recovery region.
C.Configure automated cross-region snapshots to be copied to the recovery region.
D.Create a cross-region read replica in the desired recovery region.
AnswersC, D

Cross-region snapshot copy allows restoring in another region.

Why this answer

Cross-region snapshots for Amazon RDS are automatically copied to a destination AWS region, enabling you to restore the database in the recovery region from the most recent snapshot. This meets the 15-minute recovery time objective (RTO) when combined with a pre-provisioned DB instance, as the snapshot copy is asynchronous but can be scheduled to occur frequently (e.g., every 5 minutes for SQL Server).

Exam trap

The trap here is that candidates confuse Multi-AZ (regional high availability) with cross-region disaster recovery, or they assume automated backups can be copied across regions, but AWS does not support automatic cross-region backup copying for RDS.

6
Multi-Selectmedium

Which TWO of the following are benefits of using Amazon DynamoDB Accelerator (DAX)? (Choose TWO.)

Select 2 answers
A.Improves write throughput
B.Provides microsecond read latency
C.Offloads read traffic from the DynamoDB table
D.Provides data durability across Availability Zones
E.Reduces storage costs
AnswersB, C

DAX caches reads in memory for low latency.

Why this answer

Amazon DynamoDB Accelerator (DAX) is an in-memory cache that sits between your application and DynamoDB, providing microsecond response times for read-heavy workloads. It achieves this by caching frequently accessed data in memory, reducing the latency from single-digit milliseconds to microseconds for eventually consistent reads.

Exam trap

The trap here is that candidates often confuse DAX's read acceleration with write performance improvements, or assume that a cache provides durability guarantees similar to the underlying database.

7
Multi-Selectmedium

A data engineer is designing a data storage solution for IoT sensor data that is ingested at high velocity. The data is time-series and needs to be queried by time range. Which TWO AWS services are suitable for this use case? (Choose TWO)

Select 2 answers
A.Amazon RDS
B.Amazon Redshift
C.Amazon Timestream
D.Amazon DynamoDB
E.Amazon S3
AnswersC, D

Timestream is a time-series database built for IoT and operational applications.

Why this answer

Amazon Timestream is a purpose-built time-series database that automatically scales to handle high-velocity IoT sensor data, with built-in time-based partitioning and query optimization for time-range queries. It supports SQL-like queries with time-series functions (e.g., `BETWEEN`, `DATE_BIN`) and separates storage into a memory store for recent data and a magnetic store for historical data, enabling efficient querying by time range.

Exam trap

The trap here is that candidates often choose Amazon RDS or Redshift because they are familiar with SQL-based querying, overlooking that Timestream and DynamoDB are purpose-built for high-velocity time-series ingestion and time-range queries, while RDS and Redshift incur performance and cost penalties for such workloads.

8
MCQmedium

A data engineer is managing an Amazon Redshift cluster used for analytics. The cluster has a single node of type dc2.large. The engineer notices that queries are slowing down as data volume grows. The cluster's disk space is at 70% usage. The engineer needs to improve query performance and accommodate future growth. The budget allows for moderate cost increase. Which action should the engineer take?

A.Add another dc2.large node to the cluster.
B.Resize the cluster to a single ds2.xlarge node.
C.Migrate the cluster to a single ra3.xlplus node with managed storage.
D.Enable concurrency scaling and maintain the current cluster.
AnswerA

Adding nodes increases both compute and storage capacity for better performance.

Why this answer

The dc2.large node is a dense compute node with limited storage. Adding another dc2.large node (option A) increases both compute capacity and storage, which directly addresses the slowdown and provides room for growth at a moderate cost. Option B (resizing to a single ds2.xlarge node) increases storage but may not improve compute performance proportionally, as ds2 nodes are dense storage.

Option C (single ra3.xlplus with managed storage) separates compute and storage but still has a single compute endpoint, and the cost is higher. Option D (concurrency scaling) adds cost without resolving the single-node bottleneck. Therefore, option A is the best choice.

9
MCQmedium

A data engineer notices that an Amazon Redshift cluster is experiencing slow query performance. The engineer suspects that tables are not properly sorted. Which diagnostic query should the engineer run to identify unsorted rows?

A.SELECT * FROM SVV_TABLE_INFO ORDER BY unsorted DESC;
B.SELECT * FROM PG_CATALOG;
C.SELECT * FROM STV_TBL_PERM;
D.SELECT * FROM STL_LOAD_ERRORS;
AnswerA

SVV_TABLE_INFO shows unsorted rows for each table.

Why this answer

The `SVV_TABLE_INFO` system view in Amazon Redshift provides metadata about each table, including the `unsorted` column which shows the percentage of unsorted rows. By ordering by `unsorted DESC`, the engineer can quickly identify tables with the highest proportion of unsorted data, which directly impacts query performance due to inefficient zone maps and scan pruning.

Exam trap

The trap here is that candidates may confuse `SVV_TABLE_INFO` with `STV_TBL_PERM` (which shows block counts) or `STL_LOAD_ERRORS` (which is for load debugging), missing that only `SVV_TABLE_INFO` exposes the `unsorted` column specifically designed for sort health analysis.

How to eliminate wrong answers

Option B is wrong because `PG_CATALOG` is a system schema containing PostgreSQL catalog tables (e.g., `pg_class`, `pg_attribute`), not a diagnostic view for unsorted rows; it lacks the `unsorted` metric. Option C is wrong because `STV_TBL_PERM` provides block-level storage information (e.g., number of blocks per slice) but does not include a column for unsorted row percentage. Option D is wrong because `STL_LOAD_ERRORS` logs errors from COPY and INSERT operations, such as data type mismatches or malformed CSV rows, and has no relevance to sort key efficiency.

10
MCQeasy

A company uses Amazon DynamoDB for a gaming application. They need to store player session data that expires after 24 hours. Which DynamoDB feature should they use to automatically delete expired items?

A.Time to Live (TTL)
B.DynamoDB auto scaling
C.DynamoDB Streams
D.Point-in-time recovery
AnswerA

TTL automatically deletes expired items based on a timestamp attribute.

Why this answer

DynamoDB Time to Live (TTL) is the correct feature because it allows you to define a per-item timestamp attribute (e.g., `expireAt`) that DynamoDB automatically deletes once that timestamp is reached. This is ideal for expiring session data after 24 hours without requiring custom code or scheduled jobs to scan and delete items, reducing cost and operational overhead.

Exam trap

The trap here is that candidates may confuse TTL with DynamoDB Streams, thinking streams can automatically delete items, but streams only notify of changes and require separate logic to perform deletions.

How to eliminate wrong answers

Option B (DynamoDB auto scaling) is wrong because it manages throughput capacity (read/write units) based on traffic, not item expiration or deletion. Option C (DynamoDB Streams) is wrong because it captures item-level changes (inserts, updates, deletes) in near real-time for downstream processing, but does not automatically delete items. Option D (Point-in-time recovery) is wrong because it provides continuous backups to restore a table to any point within the last 35 days, but does not handle automatic deletion of expired data.

11
MCQhard

A company is using Amazon Redshift for data warehousing. The data engineer notices that the STL_ALERT_EVENT_LOG table shows many 'missing statistics' alerts. What is the best course of action to address this issue?

A.Increase the WLM concurrency slots.
B.Run VACUUM on the tables.
C.Enable compression on the tables.
D.Run ANALYZE on the tables.
AnswerD

ANALYZE updates table statistics, resolving missing statistics alerts.

Why this answer

The STL_ALERT_EVENT_LOG table records alerts about query performance issues, including 'missing statistics' alerts. This indicates that the query optimizer lacks up-to-date table statistics, leading to suboptimal query plans. Running the ANALYZE command updates table statistics, enabling the optimizer to generate efficient execution plans.

Therefore, option D is the correct course of action.

Exam trap

The trap here is that candidates often confuse VACUUM (which reorganizes data) with ANALYZE (which updates statistics), assuming both are needed for query performance, but only ANALYZE directly resolves 'missing statistics' alerts.

How to eliminate wrong answers

Option A is wrong because increasing WLM concurrency slots does not address missing statistics; it only allows more queries to run simultaneously, which could worsen performance if statistics are outdated. Option B is wrong because VACUUM reclaims disk space and sorts rows but does not update table statistics; it is used for managing data storage, not query optimization. Option C is wrong because enabling compression reduces storage and I/O but does not provide the optimizer with the statistical metadata needed for efficient query planning.

12
MCQmedium

A company is using Amazon RDS for MySQL and needs to reduce read latency for a global user base. Which AWS feature should be implemented?

A.Multi-AZ deployment
B.Aurora Auto Scaling
C.Read Replicas
D.Cross-Region Replication
AnswerC

Read Replicas allow offloading read queries to reduce latency.

Why this answer

Amazon RDS Read Replicas allow you to offload read traffic from the primary DB instance to one or more read-only copies, which can be placed in different AWS Regions to reduce read latency for a global user base. Unlike Multi-AZ, which is designed for high availability, Read Replicas directly address read performance and latency by distributing read queries closer to users. Cross-Region Replication for RDS MySQL is achieved through Read Replicas, making option C the correct choice for reducing read latency globally.

Exam trap

The trap here is that candidates often confuse Multi-AZ (high availability) with Read Replicas (read scaling), or they assume Cross-Region Replication is a separate feature when it is actually implemented via Read Replicas in RDS MySQL.

How to eliminate wrong answers

Option A is wrong because Multi-AZ deployment provides high availability and automatic failover by maintaining a standby replica in a different Availability Zone, but it does not offload read traffic or reduce read latency for a global user base. Option B is wrong because Aurora Auto Scaling automatically adjusts the number of Aurora Replicas based on workload, but it is a feature of Amazon Aurora, not Amazon RDS for MySQL, and the question specifies RDS for MySQL. Option D is wrong because Cross-Region Replication is not a standalone feature for RDS MySQL; it is implemented using Read Replicas in a different region, so it is a subset of the correct answer, not a separate feature.

13
MCQmedium

A company stores sensitive customer data in an Amazon S3 bucket. The security team requires that all data be encrypted at rest using a key that is automatically rotated every year. Which encryption solution should the data engineer use?

A.SSE-S3
B.SSE-KMS with a customer managed key
C.SSE-C
D.Client-side encryption
AnswerB

KMS can automatically rotate customer managed keys annually.

Why this answer

SSE-KMS with a customer managed key is correct because it allows you to use an AWS KMS key that you control, enabling automatic annual key rotation via the KMS key rotation feature. This satisfies the security team's requirement for encryption at rest with a key that is automatically rotated every year, while maintaining control over the key lifecycle.

Exam trap

The trap here is that candidates often confuse SSE-S3's automatic rotation (which is managed by AWS and not customer-controlled) with the requirement for a customer-managed key, leading them to incorrectly select SSE-S3 thinking it meets the automatic rotation need.

How to eliminate wrong answers

Option A is wrong because SSE-S3 uses Amazon S3-managed keys that are automatically rotated by AWS, but you cannot control the rotation schedule or manage the key yourself, failing the requirement for a customer-controlled key. Option C is wrong because SSE-C requires you to manage and provide your own encryption keys, and AWS does not support automatic rotation of SSE-C keys; you must rotate them manually. Option D is wrong because client-side encryption encrypts data before it is sent to S3, and key rotation is entirely your responsibility, not managed by AWS, so it does not meet the automatic rotation requirement.

14
MCQmedium

A company runs a multi-AZ Amazon RDS for PostgreSQL instance. They need to run a one-time analytical query that will take several hours and consume significant I/O. The query should not impact the primary workload. What should the data engineer do?

A.Create a read replica of the RDS instance and run the query on the replica.
B.Run the query directly on the primary instance during off-peak hours.
C.Increase the instance size to handle the load.
D.Enable Multi-AZ and run the query on the standby instance.
AnswerA

Read replica offloads read traffic from the primary.

Why this answer

Creating a read replica of the RDS for PostgreSQL instance allows the analytical query to run on a separate database engine without affecting the primary workload. Read replicas in Amazon RDS use asynchronous replication from the source instance, so the replica can handle heavy I/O and long-running queries independently. This ensures the primary instance remains available for the production workload without performance degradation.

Exam trap

The trap here is that candidates often confuse the Multi-AZ standby instance with a read replica, assuming the standby can be used for queries, but in Amazon RDS, the standby is only for high availability and is not accessible for read operations.

How to eliminate wrong answers

Option B is wrong because running the query directly on the primary instance, even during off-peak hours, still consumes significant I/O and CPU resources on that instance, which can impact the primary workload and potentially cause performance issues or increased latency. Option C is wrong because increasing the instance size only adds more resources to the same single instance; the analytical query would still compete with the primary workload for I/O and memory, and scaling up does not isolate the workload. Option D is wrong because the standby instance in a Multi-AZ deployment is not directly accessible for read or write operations; it is a synchronous replica used only for automatic failover, and Amazon RDS does not allow connecting to the standby for queries.

15
MCQhard

A data engineer is designing a multi-region disaster recovery plan for an Amazon DynamoDB table. The table stores critical user profile data and must have a Recovery Point Objective (RPO) of less than 1 minute and a Recovery Time Objective (RTO) of less than 5 minutes. Which solution meets these requirements?

A.Configure DynamoDB Streams and a Lambda function to replicate data to another region.
B.Use DynamoDB on-demand backup and restore to another region.
C.Use DynamoDB global tables to replicate data to another region.
D.Enable point-in-time recovery (PITR) and restore to another region.
AnswerC

Global tables provide near-real-time replication and fast failover.

Why this answer

DynamoDB global tables provide active-active multi-region replication with sub-second latency, ensuring that data written in one region is automatically replicated to other regions within seconds. This meets the RPO of less than 1 minute and RTO of less than 5 minutes because the table is already available in the secondary region for immediate reads and writes, with no manual restore or failover steps required.

Exam trap

The trap here is that candidates confuse point-in-time recovery (PITR) or on-demand backups with multi-region replication, not realizing that restore operations are manual and time-consuming, whereas global tables provide automatic, near-real-time replication.

How to eliminate wrong answers

Option A is wrong because DynamoDB Streams with a Lambda function introduces asynchronous replication that can have variable latency and potential data loss if the Lambda fails or is throttled, making it unreliable for a sub-1-minute RPO. Option B is wrong because on-demand backup and restore is a manual process that takes minutes to hours to complete, far exceeding the 5-minute RTO and 1-minute RPO. Option D is wrong because point-in-time recovery (PITR) only allows restoring to a point within the last 35 days in the same region, and restoring to another region requires exporting and re-importing data, which cannot achieve sub-5-minute RTO.

16
MCQmedium

A data engineer runs the describe-table command shown in the exhibit. The application frequently queries by CustomerID alone. Currently, these queries result in full table scans. Which action should the engineer take to improve query performance?

A.Change the sort key to OrderID
B.Create a local secondary index on CustomerID
C.Increase the read capacity units to 500
D.Create a global secondary index on CustomerID
AnswerD

A GSI allows efficient queries on CustomerID.

Why this answer

The `describe-table` output shows CustomerID is the partition key, but the application frequently queries by CustomerID alone, which currently causes full table scans because there is no index supporting that query pattern. Creating a global secondary index (GSI) on CustomerID allows efficient querying by CustomerID without scanning the entire table, as the GSI provides a separate data structure with its own read/write capacity that can be queried directly.

Exam trap

AWS often tests the misconception that increasing capacity (RCUs/WCUs) can fix query performance issues, but the trap here is that throughput and indexing are separate concerns — full table scans are a design problem, not a capacity problem.

How to eliminate wrong answers

Option A is wrong because changing the sort key to OrderID would not help queries by CustomerID alone, as the sort key is used for sorting within a partition, not for filtering by a different attribute. Option B is wrong because DynamoDB does not support local secondary indexes (LSIs) on the partition key; LSIs can only be created on a different sort key within the same partition key, and CustomerID is already the partition key, so an LSI on CustomerID is invalid. Option C is wrong because increasing read capacity units only increases throughput, not query efficiency; full table scans still occur regardless of capacity, and the issue is the lack of an index, not insufficient capacity.

17
Multi-Selecthard

A company runs a production Amazon RDS for PostgreSQL database. The database is experiencing performance degradation due to a high number of concurrent read queries. The data engineer needs to improve read performance without significantly increasing costs. Which TWO actions should the engineer take? (Choose TWO.)

Select 2 answers
A.Create one or more read replicas in the same region.
B.Enable Multi-AZ deployment for automatic failover.
C.Increase the allocated storage size to improve IOPS.
D.Enable Performance Insights to identify slow queries.
E.Delete unnecessary indexes to reduce write overhead.
AnswersA, D

Read replicas handle read traffic, reducing load on the primary.

Why this answer

Creating one or more read replicas in the same region offloads read traffic from the primary DB instance, directly addressing the high number of concurrent read queries. Read replicas are asynchronous copies that can serve SELECT traffic, improving read throughput without increasing the cost of the primary instance. This is a cost-effective scaling strategy because you pay only for the replica instances and can choose smaller instance sizes if read workloads are bursty.

Exam trap

The trap here is that candidates often confuse Multi-AZ with read replicas, assuming the standby can serve reads, or they think increasing storage automatically improves IOPS and read performance without considering cost or the actual bottleneck.

18
MCQhard

A data engineer is setting up an Amazon S3 bucket for storing sensitive financial data. The compliance team requires that all data be encrypted at rest using a customer-managed AWS KMS key. Additionally, the bucket must block public access. Which combination of settings should the engineer configure?

A.Enable default encryption with AWS-KMS and a customer managed key. Enable block public access settings.
B.Use S3 Object Ownership to enforce bucket owner enforced. Enable block public access.
C.Use S3 Bucket Keys to reduce KMS costs. Enable block public access.
D.Create a bucket policy that denies PutObject without encryption. Enable block public access.
AnswerA

This ensures all objects are encrypted with the specified KMS key and public access is blocked.

Why this answer

Enabling default encryption with AWS-KMS using a customer-managed key ensures that all objects uploaded to the S3 bucket are automatically encrypted at rest with the required key type. Additionally, enabling block public access settings prevents any public access to the bucket, satisfying the compliance team's requirements.

Exam trap

The trap here is that candidates may think a bucket policy denying unencrypted uploads is sufficient, but it does not enforce the use of a customer-managed KMS key, nor does it automatically encrypt objects that lack encryption headers.

How to eliminate wrong answers

Option B is wrong because S3 Object Ownership with bucket owner enforced controls object ownership and ACLs, but does not enforce encryption at rest with a customer-managed KMS key. Option C is wrong because S3 Bucket Keys reduce KMS request costs by using a bucket-level key, but they do not enforce encryption with a customer-managed key or block public access. Option D is wrong because a bucket policy that denies PutObject without encryption can enforce encryption, but it does not guarantee that the encryption uses a customer-managed KMS key; it could allow SSE-S3 or SSE-KMS with an AWS-managed key, and it does not configure default encryption.

19
MCQmedium

A company has an Amazon RDS for PostgreSQL DB instance with a large table that is frequently updated. The data engineer needs to reduce storage costs by archiving old records that are no longer accessed. The archived records must be retained for 7 years due to compliance requirements. Which solution is MOST cost-effective?

A.Use RDS native backup and restore to keep a separate backup.
B.Export old records using pg_dump and store in S3 Glacier Deep Archive.
C.Enable storage autoscaling on the RDS instance.
D.Move old records to a separate table in the same RDS instance.
AnswerB

This offloads old data to low-cost archival storage.

Why this answer

Exporting old records via pg_dump and storing them in S3 Glacier Deep Archive provides the lowest-cost storage for data that must be retained for 7 years but is never accessed. S3 Glacier Deep Archive offers retrieval times of 12–48 hours at a storage cost of approximately $0.00099/GB/month, far cheaper than any RDS storage tier. This approach removes the archived data from the RDS instance, reducing provisioned storage costs while meeting compliance requirements.

Exam trap

The trap here is that candidates confuse 'archiving' with 'backup' or 'storage autoscaling,' failing to recognize that only moving data out of the RDS instance to a low-cost storage class like S3 Glacier Deep Archive actually reduces ongoing storage costs.

How to eliminate wrong answers

Option A is wrong because RDS native backup and restore creates full or snapshot backups of the entire DB instance, not just the old records, and storing these backups for 7 years would incur high costs for redundant data and storage fees. Option C is wrong because enabling storage autoscaling only increases storage capacity when thresholds are reached, which does not reduce costs or archive old records—it merely prevents out-of-space errors. Option D is wrong because moving old records to a separate table in the same RDS instance does not reduce storage costs; the data still occupies the same provisioned storage, and the table remains part of the instance's billed capacity.

20
MCQhard

A company runs a streaming application on Amazon EC2 instances that writes data to an Amazon DynamoDB table (us-east-1). The data is later consumed by a reporting job that runs every hour. Recently, the reporting job has been failing with ProvisionedThroughputExceededException errors during peak hours. The DynamoDB table uses provisioned capacity with 1000 read capacity units (RCU) and 500 write capacity units (WCU). The reporting job performs scans and reads using eventually consistent reads. The application's write traffic is steady, but the reporting job's reads spike at the top of the hour. The data engineer needs to resolve the throughput exceptions without affecting the application's writes. Which solution should the data engineer implement?

A.Create a global secondary index (GSI) with enough RCU for the reporting job and have the job query the index instead of scanning the table.
B.Increase the table's RCU to 2000.
C.Create a read replica of the DynamoDB table in a different region.
D.Switch the table to on-demand capacity mode.
AnswerA

Correct. Adding a GSI with its own RCU allows the reporting job to read from the index without consuming the table's RCU, avoiding throttling and not affecting writes.

Why this answer

The reporting job is failing due to ProvisionedThroughputExceededException because it performs full table scans, consuming read capacity from the table's provisioned RCU. Since the write traffic is steady and must not be affected, increasing the table's RCU (Option B) is not ideal because it would also allow more reads, potentially impacting writes if capacity is shared. Switching to on-demand (Option D) would eliminate throttling but could significantly increase costs and does not provide dedicated read capacity for the reporting job.

A read replica (Option C) is not a native DynamoDB feature. Creating a global secondary index (GSI) with its own provisioned read capacity dedicated for the reporting job (Option A) offloads the read traffic from the main table, preventing interference with writes. The job can query the GSI with eventually consistent reads, effectively using the allocated RCU on the GSI without affecting the table's capacity.

Exam trap

The main trap is thinking that simply increasing the table's RCU or switching to on-demand is the best solution, without considering the impact on write performance or cost. A GSI with dedicated capacity isolates read workloads.

21
MCQhard

A company uses Amazon DynamoDB as the primary data store for a gaming application. The application experiences sudden spikes in traffic. The data engineer notices that write requests are throttled during peak times. The partition keys are well-distributed. What should the data engineer do to reduce throttling?

A.Use DynamoDB global tables to distribute writes across regions.
B.Configure DynamoDB auto scaling to adjust write capacity automatically.
C.Increase the number of partition keys to improve write distribution.
D.Enable DynamoDB Accelerator (DAX) to cache write operations.
AnswerB

Auto scaling increases write capacity during spikes, reducing throttling.

Why this answer

DynamoDB auto scaling allows the table to automatically adjust its provisioned write capacity based on actual traffic patterns, preventing throttling during sudden spikes without manual intervention. Since the partition keys are already well-distributed, throttling is likely due to insufficient write capacity units, which auto scaling can dynamically increase.

Exam trap

The trap here is that candidates may confuse throttling due to hot partitions (uneven key distribution) with throttling due to insufficient overall capacity, leading them to incorrectly choose option C even when the question explicitly states partition keys are well-distributed.

How to eliminate wrong answers

Option A is wrong because DynamoDB global tables replicate data across regions for disaster recovery and low-latency reads, but they do not increase write capacity within a single region; writes are still subject to the same per-table capacity limits. Option C is wrong because the partition keys are already well-distributed, so adding more partition keys would not resolve throttling caused by insufficient provisioned write capacity; throttling occurs when write requests exceed the table's write capacity units, not due to partition key distribution. Option D is wrong because DynamoDB Accelerator (DAX) is an in-memory cache for read operations only, not writes; it cannot reduce write throttling.

22
MCQeasy

A data engineer ran the above CLI command to describe an Amazon DynamoDB table named 'Orders'. The table has a key schema with 'OrderID' as the partition key and 'CustomerID' as the sort key. The table currently has no items. The engineer wants to add a new attribute 'OrderDate' and then query all orders for a specific customer within a date range. Which of the following actions is the MOST efficient approach to support this query pattern?

A.Modify the table's primary key to include 'OrderDate' as an additional sort key.
B.Use a Scan operation with a filter expression on 'CustomerID' and 'OrderDate' to retrieve the data.
C.Create a Local Secondary Index (LSI) with 'CustomerID' as partition key and 'OrderDate' as sort key.
D.Create a Global Secondary Index (GSI) with 'CustomerID' as partition key and 'OrderDate' as sort key.
AnswerD

GSI can be added at any time and supports efficient queries on CustomerID and OrderDate.

Why this answer

A Global Secondary Index (GSI) allows querying on a different partition key ('CustomerID') and sort key ('OrderDate') without altering the base table's key schema. This supports efficient range queries on 'OrderDate' for a specific customer, as GSIs provide a separate index with its own provisioned throughput and can be created on existing tables with items. The base table's primary key remains unchanged, and the GSI enables the desired query pattern with low latency.

Exam trap

AWS often tests the distinction between LSIs and GSIs, specifically that LSIs require the same partition key as the base table, while GSIs allow a different partition key, which is a common point of confusion for candidates.

How to eliminate wrong answers

Option A is wrong because DynamoDB does not support modifying an existing table's primary key schema; you cannot add a sort key after table creation without recreating the table. Option B is wrong because a Scan operation reads every item in the table and then applies a filter, which is inefficient and costly for large tables, and does not leverage DynamoDB's indexing capabilities for range queries. Option C is wrong because a Local Secondary Index (LSI) must have the same partition key as the base table (here 'OrderID'), so it cannot use 'CustomerID' as the partition key; LSIs only allow querying with the base table's partition key and an alternate sort key.

23
MCQhard

A company is using AWS Glue to run ETL jobs that write data to an Amazon S3 data lake. The jobs are failing with '503 Slow Down' errors. The data engineering team has already implemented retries. What is the BEST long-term solution?

A.Enable S3 Transfer Acceleration.
B.Use S3 multipart upload for all objects.
C.Increase the number of retries in the Glue job.
D.Implement a backoff strategy to reduce the request rate.
AnswerD

Reducing request rate helps avoid S3 503 errors.

Why this answer

The '503 Slow Down' error from Amazon S3 indicates that the request rate is too high and S3 is throttling the requests. The best long-term solution is to implement a backoff strategy (exponential backoff) to reduce the request rate, which allows the Glue job to automatically slow down and retry with increasing delays, aligning with S3's request rate limits and avoiding sustained throttling.

Exam trap

The trap here is that candidates often confuse '503 Slow Down' with a network or throughput issue and choose S3 Transfer Acceleration or multipart upload, when in fact the error is a throttling response from S3 that requires reducing the request rate via backoff, not increasing speed or parallelism.

How to eliminate wrong answers

Option A is wrong because S3 Transfer Acceleration is designed to speed up uploads over long distances using edge locations, but it does not reduce the request rate or resolve throttling caused by high request volumes. Option B is wrong because S3 multipart upload is a mechanism for uploading large objects in parts, which can improve throughput but does not address the root cause of excessive request rate leading to '503 Slow Down' errors. Option C is wrong because increasing the number of retries without reducing the request rate will likely continue to trigger throttling, as the same high request rate will persist after each retry, leading to repeated failures.

24
MCQmedium

A company is migrating an on-premises MongoDB database to Amazon DocumentDB. The migration must have minimal downtime. Which service should be used to perform the migration?

A.AWS Glue
B.AWS DataSync
C.AWS Database Migration Service (DMS)
D.Amazon S3 Transfer Acceleration
AnswerC

DMS supports MongoDB to DocumentDB migration with minimal downtime using change data capture.

Why this answer

AWS Database Migration Service (DMS) is the correct choice because it supports continuous replication from MongoDB to Amazon DocumentDB using change data capture (CDC), enabling near-zero downtime migrations. DMS can perform a full load of existing data and then apply ongoing changes from the source MongoDB oplog, keeping the target DocumentDB synchronized until the cutover.

Exam trap

The trap here is that candidates may confuse AWS DMS with AWS DataSync or AWS Glue, assuming any 'migration' or 'data transfer' service can handle live database replication, but only DMS provides the necessary CDC engine for heterogeneous database migrations with minimal downtime.

How to eliminate wrong answers

Option A is wrong because AWS Glue is a serverless data integration service for ETL (extract, transform, load) jobs, not designed for live database migration with minimal downtime; it lacks native CDC support for MongoDB to DocumentDB replication. Option B is wrong because AWS DataSync is optimized for moving large volumes of file data (e.g., NFS, SMB) to AWS storage services like S3 or EFS, not for heterogeneous database migrations or ongoing replication. Option D is wrong because Amazon S3 Transfer Acceleration is a feature that speeds up uploads to S3 buckets over long distances using edge locations; it has no capability to migrate or replicate a MongoDB database to DocumentDB.

25
Multi-Selecthard

A data engineer is designing a data lake on Amazon S3. The data must be immutable and support high-throughput streaming ingestion. Which THREE features should the engineer consider? (Select THREE.)

Select 3 answers
A.S3 Transfer Acceleration
B.S3 Lifecycle policies to transition data to Amazon S3 Glacier
C.S3 Multipart Upload API
D.S3 Object Lock in governance mode
E.S3 Cross-Region Replication (CRR)
AnswersB, C, D

Lifecycle policies automate data movement, cost-effectively managing the data lifecycle.

Why this answer

S3 Object Lock in governance mode (Option D) is correct because it enforces immutability by preventing objects from being deleted or overwritten for a specified retention period, which is essential for a data lake requiring immutable data. S3 Multipart Upload API (Option C) is correct because it enables high-throughput streaming ingestion by allowing large objects to be uploaded in parallel parts, improving throughput and resilience. S3 Lifecycle policies to transition data to Amazon S3 Glacier (Option B) is correct because it supports cost-effective storage management for immutable data that is rarely accessed, aligning with the data lake's lifecycle needs.

Exam trap

The trap here is that candidates often confuse S3 Transfer Acceleration (a speed optimization) with a feature that provides immutability or streaming support, leading them to select it incorrectly, while overlooking that S3 Object Lock and Multipart Upload directly address the core requirements of immutability and high-throughput ingestion.

26
MCQeasy

A company is storing large amounts of log data in Amazon S3. The data is accessed frequently for the first 30 days, then rarely after that. The company wants to automatically transition the data to a lower-cost storage class after 30 days. Which S3 feature should the data engineer use?

A.S3 Intelligent-Tiering
B.S3 Lifecycle policies
C.S3 Cross-Region Replication
D.S3 Batch Operations
AnswerB

Lifecycle policies can transition objects after a specified number of days.

Why this answer

S3 Lifecycle policies allow you to define rules that automatically transition objects between storage classes based on age or other criteria. In this scenario, a lifecycle rule can be configured to transition objects from S3 Standard to a lower-cost class like S3 Glacier Deep Archive after 30 days, directly meeting the requirement for automated cost optimization.

Exam trap

The trap here is that candidates confuse S3 Intelligent-Tiering's automatic cost optimization with the ability to enforce a fixed time-based transition, when in fact Intelligent-Tiering monitors access patterns and may not align with a strict 30-day policy.

How to eliminate wrong answers

Option A is wrong because S3 Intelligent-Tiering automatically moves data between access tiers based on changing access patterns, but it does not allow you to set a fixed 30-day transition rule; it monitors usage and may not transition data that is rarely accessed after exactly 30 days. Option C is wrong because S3 Cross-Region Replication is used to copy objects to a different AWS region for disaster recovery or compliance, not to transition objects to a lower-cost storage class within the same region. Option D is wrong because S3 Batch Operations is designed for bulk actions like copying, tagging, or restoring objects, not for automating storage class transitions based on time.

27
Multi-Selecthard

A company uses Amazon S3 to store log files that are generated every hour. Each log file is about 1 GB. The logs must be stored for 5 years for compliance. The data engineer wants to minimize storage costs while ensuring that logs can be retrieved within 24 hours for the first year, and within 48 hours thereafter. Which TWO lifecycle actions should the engineer configure? (Choose TWO.)

Select 2 answers
A.Transition objects to S3 Standard after 30 days.
B.Transition objects to S3 Glacier Deep Archive after 1 year.
C.Set a retrieval window of 48 hours for Glacier Deep Archive.
D.Delete objects after 2 years to reduce storage costs.
E.Transition objects to S3 Standard-IA after 30 days.
AnswersB, E

Correct. Transitioning to S3 Glacier Deep Archive after 1 year minimizes storage costs for the remaining retention period, and the 48-hour retrieval window meets the compliance requirement after the first year.

Why this answer

Transitioning objects to S3 Glacier Deep Archive after 1 year provides the lowest storage cost while meeting the 5-year retention requirement. After the first year, the retrieval window of up to 48 hours for Glacier Deep Archive satisfies the compliance need. Option E is correct because after 30 days, logs are less frequently accessed but still need retrieval within 24 hours during the first year; S3 Standard-IA offers lower cost than S3 Standard for such infrequent access.

Option A is incorrect because transitioning to S3 Standard after 30 days is more expensive than Standard-IA and does not provide cost savings. Option C is incorrect because 'Set a retrieval window of 48 hours for Glacier Deep Archive' is not a lifecycle action; retrieval windows are configured during restore operations, not in lifecycle rules. Option D is incorrect because deleting objects after 2 years violates the 5-year retention policy.

Exam trap

Candidates might incorrectly think that Option C (Set a retrieval window of 48 hours for Glacier Deep Archive) is a valid lifecycle action, but retrieval windows are configured during restore operations, not in lifecycle rules. The trap is also that candidates might select Option A (S3 Standard) or Option D (delete after 2 years) due to misunderstanding access patterns or retention requirements.

28
MCQmedium

A data engineer is setting up an Amazon S3 lifecycle policy to transition objects to S3 Glacier after 90 days and delete after 365 days. The objects are stored in the S3 Standard storage class. Which lifecycle rule configuration meets the requirements?

A.Transition to Glacier after 90 days and expire after 90 days
B.Transition to Glacier after 90 days and expire after 90 days
C.Transition to Glacier after 365 days and expire after 365 days
D.Transition to Glacier after 90 days and expire after 365 days
AnswerD

Correct timing for transition and deletion.

Why this answer

It specifies a transition action to S3 Glacier after 90 days and a separate expiration action after 365 days, which directly matches the requirements. S3 lifecycle policies allow independent transition and expiration actions, and the expiration action must be set to a value greater than the transition action to keep objects accessible in Glacier until deletion.

Exam trap

The trap here is that candidates may confuse 'expire' with 'transition' or think that setting both actions to the same number of days is valid, but AWS requires expiration to be after transition to avoid immediate deletion.

How to eliminate wrong answers

Option A is wrong because it sets both transition and expiration to 90 days, which would delete objects immediately after transitioning to Glacier, not after 365 days as required. Option B is wrong for the same reason as A — it incorrectly uses 90 days for both actions, failing to meet the 365-day deletion requirement. Option C is wrong because it transitions to Glacier after 365 days instead of 90 days, which does not meet the requirement to transition after 90 days.

29
MCQhard

A healthcare company uses Amazon RDS for PostgreSQL to store patient records. The database has a size of 1 TB and is running on a db.r5.large instance. The company requires that the database be highly available and have automated backups with point-in-time recovery (PITR) for the last 35 days. The operations team has configured Multi-AZ deployment and automated backups with a 35-day retention period. During a recent disaster simulation, the team attempted to restore the database to a point in time from 30 days ago. The restore operation failed because the backup was not available. On investigation, the team found that the automated backups were being deleted before the retention period ended. The team also noticed that the database has a large number of transaction logs generating a high volume of write activity. What is the most likely cause of the backups being deleted prematurely?

A.The RDS instance was deleted, which automatically deletes all automated backups.
B.The automated backup window was set to a time that conflicted with the database maintenance window.
C.The Multi-AZ deployment was not enabled during the backup process, causing backups to fail.
D.The database had manual snapshots that were deleted manually by the operations team.
AnswerA

When an RDS instance is deleted, automated backups are also deleted unless a final snapshot is taken.

Why this answer

When an RDS instance is deleted, all automated backups associated with that instance are automatically deleted, regardless of the configured retention period. In this scenario, the instance was not explicitly described as deleted, but the deletion of automated backups before the retention period ends is a classic symptom of instance deletion. Option B is incorrect because a conflicting backup window does not cause backups to be deleted; it only affects when backups are taken.

Option C is incorrect because Multi-AZ deployment does not affect backup retention; backups are still retained according to the retention period even if Multi-AZ is not enabled. Option D is incorrect because manual snapshots are independent of automated backups; deleting manual snapshots does not affect automated backup retention.

30
MCQeasy

A data engineer is configuring an Amazon S3 lifecycle policy to transition objects to S3 Glacier Deep Archive after 90 days. The bucket receives new objects daily. The engineer wants to ensure that objects are not deleted before 90 days. Which lifecycle action should be used?

A.Expiration
B.Transition
C.NoncurrentVersionTransition
D.AbortIncompleteMultipartUpload
AnswerB

Transition moves objects to a different storage class.

Why this answer

(Transition) is correct because the S3 Lifecycle Transition action moves objects between storage classes over time. To ensure objects are moved to S3 Glacier Deep Archive after 90 days without deletion, a Transition rule is configured to specify the target storage class and the number of days from object creation.

Exam trap

The trap here is confusing Expiration (which deletes objects) with Transition (which moves objects to another storage class), leading candidates to select Expiration when the goal is to retain objects for a minimum period before moving them to archival storage.

How to eliminate wrong answers

Option A (Expiration) is wrong because it permanently deletes objects after a specified number of days, which would remove them before they could be transitioned to Glacier Deep Archive. Option C (NoncurrentVersionTransition) is wrong because it applies only to noncurrent versions of versioned objects, not to current objects in a non-versioned or versioned bucket. Option D (AbortIncompleteMultipartUpload) is wrong because it only aborts incomplete multipart uploads after a specified number of days, not transitioning or deleting complete objects.

31
MCQeasy

A company needs to store application log files for 90 days for compliance. The logs are generated continuously and are rarely accessed after 30 days. The data engineer must minimize storage costs. Which storage solution should the engineer choose?

A.Amazon CloudWatch Logs with a retention policy of 90 days
B.Amazon S3 Glacier Deep Archive
C.Amazon EBS gp3 volumes attached to an EC2 instance
D.Amazon S3 Standard with a lifecycle policy to transition to S3 Standard-IA after 30 days and expire after 90 days
AnswerD

This minimizes cost by using cheaper storage for infrequently accessed data and deleting after compliance period.

Why this answer

Amazon S3 Standard with a lifecycle policy to transition to S3 Standard-IA after 30 days and expire after 90 days is correct because it aligns with the access pattern: logs are frequently accessed only in the first 30 days, then rarely accessed for the remaining 60 days. S3 Standard-IA offers lower storage costs for infrequently accessed data while still providing millisecond retrieval, and the lifecycle policy automates the transition and eventual deletion, minimizing costs without sacrificing availability.

Exam trap

The trap here is that candidates often choose CloudWatch Logs (Option A) because it is a familiar logging service, but they overlook that its cost model (per GB ingested, per GB stored, and per GB archived) can be significantly higher than S3 for long-term retention of large log volumes, and it lacks the automated tiering to lower-cost storage classes.

How to eliminate wrong answers

Option A is wrong because Amazon CloudWatch Logs is designed for real-time monitoring and log ingestion, not for long-term, cost-optimized archival storage; its retention policy only controls deletion, not tiered storage transitions, and costs can be higher than S3 for large volumes of rarely accessed logs. Option B is wrong because S3 Glacier Deep Archive is intended for data that is accessed at most once or twice a year and has retrieval times of 12 hours or more, making it unsuitable for logs that may need occasional access within 90 days; it also incurs minimum storage charges that make it cost-ineffective for short retention periods. Option C is wrong because EBS gp3 volumes attached to an EC2 instance incur compute costs even when idle, and managing log storage on block storage requires manual lifecycle management, leading to higher operational overhead and cost compared to a fully managed object storage solution.

32
Multi-Selectmedium

Which TWO actions are recommended for securing data at rest in Amazon S3? (Choose two.)

Select 2 answers
A.Enable default encryption on the S3 bucket using SSE-S3 or SSE-KMS.
B.Use S3 Bucket Key to reduce KMS request costs.
C.Enable S3 Versioning to protect against accidental deletions.
D.Apply a bucket policy that denies PutObject requests without the x-amz-server-side-encryption header.
E.Configure cross-region replication to replicate data to another bucket.
AnswersA, D

Ensures all new objects are encrypted automatically.

Why this answer

Enabling default encryption on an S3 bucket using SSE-S3 or SSE-KMS ensures that all objects stored in the bucket are encrypted at rest automatically, even if the upload request does not include encryption headers. This satisfies the requirement for securing data at rest by applying server-side encryption to every object written to the bucket.

Exam trap

The trap here is that candidates often confuse data protection features like Versioning or replication with encryption controls, but the question specifically asks for securing data at rest, which requires encryption mechanisms such as default encryption or policy-enforced encryption headers.

33
MCQmedium

A company runs a data warehouse on Amazon Redshift. Queries are slow, and the team suspects data distribution is skewed. Which approach would best help identify distribution skew?

A.Check the STL_LOAD_ERRORS table for load failures
B.Query the SVV_TABLE_INFO table to see table size
C.Query the SVV_DISKUSAGE table to examine data distribution across slices
D.Review the WLM configuration in the parameter group
AnswerC

SVV_DISKUSAGE provides per-slice disk usage, helping identify skew.

Why this answer

The SVV_DISKUSAGE table provides per-slice data distribution information, allowing you to identify skew by comparing the number of blocks allocated to each slice for a given table. In Amazon Redshift, data is distributed across slices based on the distribution key, and significant variation in block counts across slices indicates distribution skew, which can cause query performance degradation due to uneven workload distribution.

Exam trap

The trap here is that candidates confuse table-level metadata (SVV_TABLE_INFO) with slice-level distribution data (SVV_DISKUSAGE), assuming overall table size alone can reveal skew, when in fact only per-slice block counts expose uneven data distribution.

How to eliminate wrong answers

Option A is wrong because STL_LOAD_ERRORS records errors during COPY or INSERT operations, such as data type mismatches or malformed data, and has no relation to data distribution skew. Option B is wrong because SVV_TABLE_INFO shows overall table size, row count, and compression ratios, but it does not provide per-slice data distribution details needed to identify skew. Option D is wrong because WLM configuration in the parameter group manages query concurrency and memory allocation, not data distribution or skew detection.

34
MCQhard

A data engineer is troubleshooting an Amazon DynamoDB table that has frequent throttling exceptions for write requests. The table has auto scaling enabled. What is the most likely cause?

A.The partition key is causing a hot partition
B.The table's read capacity is set too low
C.The table's auto scaling is disabled
D.The table is using global tables without conflict resolution
AnswerA

Hot partitions throttle even if overall capacity is sufficient.

Why this answer

Auto scaling adjusts capacity based on utilization, but it cannot prevent throttling caused by a hot partition. If a single partition key value receives a disproportionate share of write traffic, that partition's throughput limit (3,000 WCU or 10 MB per partition) is exceeded, triggering ProvisionedThroughputExceededException. Auto scaling operates at the table level, not per partition, so it cannot resolve this imbalance.

Exam trap

The trap here is that candidates assume auto scaling automatically prevents all throttling, but it only adjusts table-level capacity and cannot fix uneven data access patterns like a hot partition.

How to eliminate wrong answers

Option B is wrong because write throttling is unrelated to read capacity; the question specifies write request throttling, so read capacity settings are irrelevant. Option C is wrong because the question states auto scaling is enabled, so this option describes a scenario that does not match the given condition. Option D is wrong because global tables with conflict resolution handle eventual consistency and replication conflicts, not throughput throttling on write requests.

35
MCQmedium

A company is running a data warehouse on Amazon Redshift. The data engineering team notices that query performance has degraded over time. They suspect that data distribution is causing excessive data movement between nodes. The table is joined frequently on the customer_id column. Which column should be chosen as the distribution key to optimize join performance?

A.AUTO distribution
B.customer_id
C.order_date
D.EVEN distribution
AnswerB

Distributing on the join column reduces data movement.

Why this answer

(customer_id) because Redshift distributes data across nodes based on the distribution key. When two tables are joined on customer_id, using it as the distribution key ensures that matching rows from both tables are co-located on the same node, eliminating the need for data redistribution (broadcast or shuffle) during the join. This minimizes network traffic and reduces query latency, directly addressing the performance degradation caused by excessive data movement.

Exam trap

The trap here is that candidates may choose EVEN distribution (D) thinking it balances data evenly, but they overlook that it causes maximum data movement for joins, while AUTO distribution (A) seems safe but does not guarantee co-location for the specific join column.

How to eliminate wrong answers

Option A (AUTO distribution) is wrong because AUTO lets Redshift choose the distribution style based on table size and usage patterns, but it may not guarantee co-location for frequent joins on customer_id, potentially still causing data movement. Option C (order_date) is wrong because it is not the join column; using it as the distribution key would scatter customer_id values across nodes, forcing redistribution for every join on customer_id. Option D (EVEN distribution) is wrong because it distributes rows round-robin across nodes without considering join keys, which maximizes data movement during joins on customer_id and degrades performance.

36
MCQhard

A data engineer created the IAM policy shown in the exhibit. The engineer then attempts to upload an object to 'my-bucket' using the AWS CLI with the command: aws s3 cp file.txt s3://my-bucket/ --sse aws:kms. The upload fails with an 'AccessDenied' error. What is the most likely cause?

A.The policy resource is incorrect
B.The policy requires SSE-S3 (AES256), but the command uses SSE-KMS
C.The policy does not allow the s3:PutObject action
D.The command is missing the --sse-customer-algorithm parameter
AnswerB

The condition mandates AES256, but the command uses aws:kms.

Why this answer

The IAM policy in the exhibit requires the `s3:x-amz-server-side-encryption` header to be set to `AES256`, which corresponds to SSE-S3. The AWS CLI command uses `--sse aws:kms`, which sets the header to `aws:kms` for SSE-KMS. This mismatch causes the request to fail the `s3:PutObject` condition check in the policy, resulting in an 'AccessDenied' error.

Exam trap

The trap here is that candidates may overlook the condition key in the policy and assume the error is due to a missing action or incorrect resource, rather than recognizing that the encryption header value must exactly match the policy's requirement.

How to eliminate wrong answers

Option A is wrong because the policy resource `arn:aws:s3:::my-bucket/*` correctly specifies the bucket and its objects, so the resource is not the issue. Option B is wrong because the policy explicitly requires SSE-S3 (AES256), but the command uses SSE-KMS, which is the direct cause of the failure. Option C is wrong because the policy does allow `s3:PutObject` via the `Effect: Allow` statement; the failure is due to the condition key mismatch, not a missing action.

Option D is wrong because `--sse-customer-algorithm` is used for SSE-C, not SSE-KMS or SSE-S3, and the command already specifies `--sse aws:kms` correctly for SSE-KMS.

37
MCQeasy

A data engineer is designing a data lake on AWS using Amazon S3. The data consists of CSV files generated by IoT devices. The data is accessed by multiple analytics jobs, and the engineer needs to ensure that new files are immediately visible to all consumers after writing. What S3 consistency model applies?

A.Consistent reads require S3 Object Lock.
B.Strong consistency for all operations.
C.Eventual consistency for all operations.
D.Read-after-write consistency for new object PUTS.
AnswerB

While S3 now has strong consistency, the question asks about new files specifically.

Why this answer

Amazon S3 now provides strong consistency for all operations. After a successful write of a new object (or overwrite of an existing object), any subsequent read request immediately receives the latest version of the object, and list operations are also strongly consistent. Therefore, for new CSV files written to S3, the applicable model is strong consistency for all operations.

Exam trap

Candidates may incorrectly choose 'Read-after-write consistency for new object PUTS' (option D) because the question mentions new files after writing. While read-after-write behavior for new object PUTs is true, the current S3 consistency model is strong consistency for all operations. Another pitfall is selecting 'Eventual consistency for all operations' (option C) due to outdated knowledge of S3's previous eventual consistency model.

How to eliminate wrong answers

Option A is wrong because S3 Object Lock is a feature for preventing object deletion or overwrites for compliance or retention, not for ensuring consistency. Option B is wrong because while S3 now offers strong consistency for all operations (including overwrites and deletes), this was not always the case; historically S3 offered eventual consistency for overwrites, and the question's phrasing about 'new files' specifically tests the read-after-write consistency model for new PUTS. Option C is wrong because S3 no longer provides eventual consistency for new object PUTS; it guarantees strong read-after-write consistency for new objects since December 2020.

38
MCQhard

A gaming company uses Amazon DynamoDB to store player profiles and game state. The table has a partition key of 'player_id' and no sort key. The table is provisioned with 5,000 RCUs and 5,000 WCUs. The application performs frequent reads and writes to update player scores. Recently, the company introduced a new feature that allows players to form guilds. The guild data is stored in a separate DynamoDB table with a partition key of 'guild_id'. The application often needs to retrieve all members of a guild. The data engineer is encountering high latency when querying the guild table because the guilds can have up to 100 members. The engineer wants to reduce latency without changing the application architecture. What should the data engineer do?

A.Increase the provisioned read and write capacity for the guild table to 10,000 RCUs and 10,000 WCUs.
B.Create a global secondary index (GSI) on the guild table with partition key guild_id and sort key member_id.
C.Enable DynamoDB Streams on the guild table and process the stream to populate a separate read table.
D.Use DynamoDB Accelerator (DAX) to cache the results of the guild queries.
AnswerB

The GSI allows efficient retrieval of all members of a guild by querying on guild_id.

Why this answer

Adding a global secondary index (GSI) on the guild table with guild_id as the partition key and member_id as the sort key allows efficient queries for all members of a guild. Option A is wrong because increasing capacity may not solve the access pattern issue. Option C is wrong because DynamoDB Streams are for change data capture, not for query optimization.

Option D is wrong because DAX caches read results; if the query pattern is inefficient, DAX won't help much.

39
Multi-Selectmedium

Which TWO statements are true about Amazon S3 bucket policies and ACLs?

Select 2 answers
A.When both exist, bucket policies are evaluated before ACLs.
B.ACLs are a legacy access control mechanism that is still supported.
C.ACLs can grant permissions to all authenticated AWS users.
D.ACLs support conditions such as IP address restrictions.
E.Bucket policies can grant access to users in other AWS accounts.
AnswersB, E

ACLs are older but still functional.

Why this answer

ACLs (Access Control Lists) are indeed a legacy access control mechanism that Amazon S3 continues to support for backward compatibility. While bucket policies and IAM policies are the modern, recommended approach, ACLs can still be used to grant basic read/write permissions to AWS accounts or predefined groups like AllUsers or AuthenticatedUsers.

Exam trap

The trap here is that candidates confuse ACLs with bucket policies, assuming ACLs support advanced conditions like IP restrictions or that bucket policies and ACLs are evaluated in a strict order, when in fact ACLs are simplistic and both are evaluated as an OR.

40
MCQmedium

A data engineer reviewed the S3 lifecycle policy shown in the exhibit. The engineer notices that objects under the 'logs/' prefix are being deleted after 365 days. The business requirement is to retain logs for at least 5 years. What should the engineer change in the lifecycle policy?

A.Change the prefix to 'logs/archive/'
B.Set the expiration days to 1825
C.Change the transition to GLACIER on day 365
D.Remove the expiration action
AnswerB

1825 days equals 5 years.

Why this answer

The business requirement is to retain logs for at least 5 years, which is 1,825 days (5 × 365). The current lifecycle policy sets expiration to 365 days, causing premature deletion. By setting the expiration days to 1,825, the S3 lifecycle policy will delete objects under the 'logs/' prefix only after 5 years, meeting the retention requirement.

Exam trap

The trap here is that candidates may confuse transition actions (which change storage class) with expiration actions (which delete objects), or incorrectly assume that changing the prefix or removing expiration will meet the retention requirement without adjusting the day count.

How to eliminate wrong answers

Option A is wrong because changing the prefix to 'logs/archive/' would only apply the lifecycle rules to a different subset of objects, not fix the retention period for the original 'logs/' prefix. Option C is wrong because transitioning to GLACIER on day 365 only changes the storage class for cost optimization; it does not extend the deletion timeline, so objects would still be deleted after 365 days. Option D is wrong because removing the expiration action entirely would mean objects are never automatically deleted, which may lead to indefinite storage and increased costs, not a 5-year retention.

41
Multi-Selecteasy

A company is building a data pipeline that ingests streaming data from IoT devices. The data must be stored in a durable, scalable, and cost-effective manner for batch processing. Which TWO AWS services should be used together?

Select 2 answers
A.Amazon ElastiCache
B.Amazon Kinesis Data Streams
C.Amazon Redshift
D.Amazon DynamoDB
E.Amazon S3
AnswersB, E

Ingests streaming data in real-time.

Why this answer

Amazon Kinesis Data Streams (B) is the correct ingestion service for streaming IoT data because it provides a durable, scalable, and real-time data streaming platform that can capture and store data records for up to 365 days. Amazon S3 (E) is the correct storage service for batch processing because it offers virtually unlimited durability (99.999999999%), cost-effective tiered storage, and native integration with batch processing frameworks like Amazon EMR and AWS Glue. Together, they form a classic streaming-to-batch pipeline: Kinesis ingests and buffers the streaming data, which is then persisted in S3 for downstream batch analytics.

Exam trap

The trap here is that candidates often confuse Amazon Kinesis Data Streams with Amazon Kinesis Data Firehose (which directly writes to S3) or mistakenly choose Amazon Redshift for storage, overlooking that S3 is the correct durable and cost-effective storage layer for raw streaming data before any warehousing.

42
MCQmedium

A company is using Amazon S3 to store large amounts of archival data. The data is accessed infrequently but must be immediately retrievable when needed. Which storage class is the most cost-effective choice?

A.S3 Standard
B.S3 Standard-IA
C.S3 Glacier Deep Archive
D.S3 Intelligent-Tiering
AnswerB

Designed for infrequently accessed data with immediate retrieval.

Why this answer

S3 Standard-IA (Infrequent Access) is the most cost-effective choice because it offers lower storage costs than S3 Standard while still providing millisecond first-byte latency for immediate retrieval. The data is accessed infrequently but requires instant availability, which matches the IA use case exactly.

Exam trap

The trap here is that candidates confuse 'immediately retrievable' with 'lowest cost' and choose Glacier Deep Archive, overlooking the critical requirement for instant access versus the 12-48 hour retrieval time of Deep Archive.

How to eliminate wrong answers

Option A is wrong because S3 Standard is designed for frequently accessed data and has higher storage costs than Standard-IA, making it less cost-effective for archival data with infrequent access. Option C is wrong because S3 Glacier Deep Archive has the lowest storage cost but retrieval times range from 12 to 48 hours, failing the 'immediately retrievable' requirement. Option D is wrong because S3 Intelligent-Tiering automatically moves data between tiers based on access patterns but incurs a monthly monitoring and automation fee per object, making it less cost-effective than Standard-IA for a predictable infrequent access pattern.

43
Multi-Selectmedium

A company is designing a data lake on Amazon S3. Which TWO strategies improve query performance for Amazon Athena?

Select 2 answers
A.Enable S3 Versioning on the bucket.
B.Use server-side encryption with AWS KMS (SSE-KMS).
C.Partition the data by frequently queried columns such as date or region.
D.Use columnar file formats like Parquet or ORC.
E.Store data in CSV format with header rows.
AnswersC, D

Partitioning prunes the data scanned.

Why this answer

Partitioning data by frequently queried columns (e.g., date or region) allows Athena to prune the data scanned by only reading the relevant partitions, reducing the amount of data scanned and improving query performance. This is a core optimization for Athena, which charges based on data scanned and performs better with less I/O.

Exam trap

The trap here is that candidates often confuse data management features (like versioning or encryption) with performance optimizations, or assume that simpler formats like CSV are sufficient for analytics, ignoring the significant performance benefits of partitioning and columnar storage.

44
Multi-Selecthard

A company is using Amazon Redshift for its data warehouse. The data engineering team needs to improve query performance for a large fact table that is frequently joined with multiple dimension tables. Which THREE strategies should be considered?

Select 3 answers
A.Define sort keys on columns used in WHERE clauses.
B.Use DISTSTYLE EVEN to distribute data evenly.
C.Increase the number of nodes in the cluster.
D.Choose an appropriate distribution key based on join columns.
E.Apply columnar compression to reduce storage and I/O.
AnswersA, D, E

Improves filter efficiency.

Why this answer

Defining sort keys on columns used in WHERE clauses allows Amazon Redshift to use zone maps to skip large blocks of data that do not satisfy the filter condition, dramatically reducing the amount of data scanned. This is especially effective for large fact tables where selective filters can prune entire disk blocks, improving query performance without additional hardware.

Exam trap

The trap here is that candidates often assume DISTSTYLE EVEN is always the best choice for performance, but for frequently joined fact tables, a distribution key aligned with the join columns is critical to avoid network-heavy data shuffling.

45
Multi-Selecthard

A company stores sensitive data in Amazon S3. The security team requires encryption at rest and that the encryption keys are managed by the company using AWS KMS. The data is frequently accessed by multiple AWS services. Which THREE steps should be taken to meet these requirements?

Select 3 answers
A.Use client-side encryption with the KMS key before uploading to S3
B.Configure the KMS key policy to allow the necessary AWS services to use the key for decryption
C.Enable default encryption on the S3 bucket using SSE-S3
D.Create a bucket policy that denies s3:PutObject if the object is not encrypted with SSE-KMS
E.Enable default encryption on the S3 bucket using SSE-KMS
AnswersB, D, E

Services must have decrypt permissions to access the encrypted objects.

Why this answer

The security team requires that encryption keys be managed by the company using AWS KMS, and that multiple AWS services can access the data. To allow those services to decrypt objects encrypted with a customer-managed KMS key, the KMS key policy must explicitly grant the necessary AWS services (e.g., AWS Lambda, Amazon Athena) permission to use the key for decryption (kms:Decrypt). Without this policy, even if the bucket is configured for SSE-KMS, the services will fail to read the encrypted objects.

Exam trap

AWS often tests the distinction between enforcing encryption (bucket policy) and enabling access to encrypted data (KMS key policy), leading candidates to overlook the KMS key policy step when multiple services need to decrypt objects.

46
MCQmedium

A data engineer runs the above AWS CLI command and receives the output. The object is part of an S3 Lifecycle policy that transitions objects to Glacier Instant Retrieval after 30 days. The object was created on January 1, 2023. Why is the object still in STANDARD_IA storage class?

A.The Lifecycle policy has a filter that excludes this object's prefix
B.Versioning is enabled and the current version is not the oldest
C.The object has not reached the transition age of 30 days yet
D.The metadata timestamp is used for lifecycle transitions instead of LastModified
AnswerC

The LastModified is Jan 2, so as of Jan 3, it is only 1 day old.

Why this answer

The S3 Lifecycle rule transitions objects to Glacier Instant Retrieval after 30 days, but the object was created on January 1, 2023, and the current date (implied by the command output) is before January 31, 2023. The transition age is calculated from the object's LastModified date, not from any other timestamp, and the object must be at least 30 days old before S3 applies the transition. Since the object is only 20 days old (as of January 21, 2023, based on the output showing STANDARD_IA), it has not yet met the 30-day threshold.

Exam trap

The trap here is that candidates assume the object's current storage class (STANDARD_IA) means the 30-day transition to Glacier Instant Retrieval has already failed or been misconfigured, when in fact the object simply hasn't aged enough yet.

How to eliminate wrong answers

Option A is wrong because the AWS CLI command output shows the object's storage class as STANDARD_IA, which indicates the Lifecycle policy has already transitioned it from STANDARD to STANDARD_IA, proving the filter does not exclude this prefix. Option B is wrong because versioning being enabled does not prevent lifecycle transitions; S3 Lifecycle policies apply to all versions unless explicitly filtered, and the current version's age is based on its own LastModified date, not the oldest version. Option D is wrong because S3 Lifecycle transitions are based on the object's LastModified date, not any metadata timestamp; the LastModified field is the authoritative timestamp for age calculations.

47
MCQeasy

A company uses Amazon RDS for PostgreSQL. The data engineer needs to ensure that the database is automatically backed up and that backups are retained for 35 days. What is the simplest way to achieve this?

A.Use AWS Backup to schedule daily backups with a 35-day retention.
B.Enable automated backups with a retention period of 35 days in the RDS instance configuration.
C.Create a manual snapshot every day and delete them after 35 days using a script.
D.Enable automatic export of transaction logs to Amazon S3 and use S3 lifecycle policies.
AnswerB

RDS automated backups run daily and retain backups for the specified period, up to 35 days.

Why this answer

Amazon RDS for PostgreSQL allows you to enable automated backups directly in the instance configuration. By setting the backup retention period to 35 days, RDS automatically performs daily snapshots and retains transaction logs for point-in-time recovery within that window. This is the simplest method because it requires no external services or custom scripting.

Exam trap

The trap here is that candidates may overcomplicate the solution by choosing AWS Backup (Option A) or manual scripting (Option C), not realizing that RDS native automated backups already provide the simplest, fully managed way to achieve the required retention period.

How to eliminate wrong answers

Option A is wrong because AWS Backup is an additional service that adds complexity and cost; RDS native automated backups already support retention up to 35 days without needing AWS Backup. Option C is wrong because manual snapshots require custom scripting to create and delete daily, which is not the simplest approach and does not provide automated point-in-time recovery. Option D is wrong because automatic export of transaction logs to S3 is not a native RDS feature for PostgreSQL; RDS handles transaction logs internally for point-in-time recovery, and using S3 lifecycle policies would not replace the need for automated backups.

48
MCQmedium

A company is using Amazon RDS for PostgreSQL and wants to minimize downtime during a major version upgrade. Which approach best meets this requirement?

A.Perform an in-place upgrade using the AWS Management Console.
B.Modify the DB instance class to a larger size to handle the upgrade.
C.Create a read replica of the current instance, upgrade the replica, and then promote it to primary.
D.Use pg_dump and pg_restore to migrate data to a new upgraded instance.
AnswerC

This minimizes downtime by switching over after upgrade.

Why this answer

Creating a read replica, upgrading it to the new major version, and then promoting it to primary minimizes downtime by allowing the replica to be upgraded while the original instance remains operational. The promotion process is fast, typically taking only a few seconds to redirect traffic, and avoids the longer downtime associated with in-place upgrades or full data migrations.

Exam trap

The trap here is that candidates often assume an in-place upgrade (Option A) is the simplest and fastest method, but they overlook the fact that major version upgrades in RDS PostgreSQL require a longer downtime window due to the need for a database restart and potential compatibility checks, making the read replica promotion strategy the superior choice for minimizing downtime.

How to eliminate wrong answers

Option A is wrong because an in-place major version upgrade for RDS PostgreSQL requires a database restart and can take significant time (often 10-30 minutes or more) depending on instance size and data volume, leading to unacceptable downtime. Option B is wrong because modifying the DB instance class to a larger size does not perform a version upgrade; it only changes compute and memory resources, leaving the PostgreSQL version unchanged. Option D is wrong because using pg_dump and pg_restore involves exporting the entire database to a file and then importing it into a new instance, which can take hours for large datasets and requires the source database to be unavailable or read-only during the process, resulting in extended downtime.

49
Multi-Selecthard

A company is migrating an on-premises Apache Hadoop cluster to Amazon EMR. The data is stored in HDFS and must be moved to Amazon S3. Which THREE considerations are important when designing the migration? (Choose THREE.)

Select 3 answers
A.S3 supports POSIX file system semantics
B.HDFS can be directly mounted as an S3 bucket
C.EMR can read data directly from S3 using EMRFS
D.S3 provides eventual consistency for overwrite PUTS and DELETES
E.Using S3 as the data store allows independent scaling of compute and storage
AnswersC, D, E

EMRFS allows EMR to access S3 as a filesystem.

Why this answer

Amazon EMR uses the EMR File System (EMRFS) to directly read and write data stored in Amazon S3, treating S3 as a scalable, durable data lake without needing to first copy data into HDFS. This allows EMR clusters to process data directly from S3, enabling decoupled compute and storage.

Exam trap

The trap here is that candidates often assume S3 supports POSIX semantics or that HDFS can be directly mounted as an S3 bucket, confusing the object storage model with a traditional filesystem, leading them to select options A or B.

50
Multi-Selecteasy

A data engineer is setting up an Amazon RDS for MySQL database. The database must be highly available and automatically failover in case of an AZ outage. Which TWO configurations should the engineer enable? (Choose TWO.)

Select 2 answers
A.Multi-AZ deployment
B.A DB subnet group with subnets in at least two Availability Zones
C.Enhanced Monitoring
D.Automated backups with a retention period of 30 days
E.Read replicas in a different Region
AnswersA, B

Multi-AZ creates a standby instance in a different Availability Zone for automatic failover.

Why this answer

Multi-AZ deployment (Option A) automatically provisions and maintains a synchronous standby replica in a different Availability Zone (AZ). In the event of an AZ outage, Amazon RDS automatically fails over to the standby, ensuring high availability with minimal downtime. This is the core mechanism for automatic failover in RDS for MySQL.

Exam trap

The trap here is that candidates often confuse read replicas or automated backups with high availability failover, but only Multi-AZ deployment provides automatic, synchronous failover within the same region.

51
MCQmedium

A company uses Amazon Redshift for analytics. The data engineer notices that queries are slow due to many small inserts. Which technique would improve write performance?

A.Use the COPY command to load data from Amazon S3.
B.Define DISTKEY and SORTKEY on the table.
C.Increase the number of nodes in the cluster.
D.Configure workload management (WLM) queues.
AnswerA

Bulk loading is more efficient than small inserts.

Why this answer

The COPY command is the recommended way to load data into Amazon Redshift because it performs bulk inserts in parallel across all nodes, leveraging the cluster's distributed architecture. Small individual INSERT statements cause high overhead due to transaction logging and commit processing, leading to slow write performance. By loading data from Amazon S3 using COPY, you bypass these per-row overheads and achieve optimal throughput.

Exam trap

The trap here is that candidates often confuse performance tuning for reads (DISTKEY/SORTKEY) or general scaling (adding nodes) with the specific write performance bottleneck caused by many small inserts, overlooking the COPY command as the primary solution for bulk data loading.

How to eliminate wrong answers

Option B is wrong because defining DISTKEY and SORTKEY improves query read performance by optimizing data distribution and sort order, but does not directly address the write performance issue caused by many small inserts. Option C is wrong because increasing the number of nodes adds compute and storage capacity, but does not solve the fundamental problem of per-insert overhead; small inserts will still be slow on a larger cluster. Option D is wrong because configuring workload management (WLM) queues manages concurrency and prioritizes queries, but does not reduce the overhead of individual small INSERT statements.

52
Multi-Selectmedium

A company is designing a data lake on Amazon S3. The data engineering team needs to implement a lifecycle policy to manage costs. Which TWO actions should be taken to reduce storage costs?

Select 2 answers
A.Transition objects to S3 Glacier Deep Archive after 90 days.
B.Transition objects to S3 One Zone-IA after 30 days.
C.Enable S3 Intelligent-Tiering.
D.Transition objects to S3 Standard-IA after 30 days.
E.Delete incomplete multipart uploads after 7 days.
AnswersA, E

Deep Archive is lowest cost for rarely accessed data.

Why this answer

Transitioning objects to S3 Glacier Deep Archive after 90 days significantly reduces storage costs for data that is rarely accessed and can tolerate a retrieval time of 12 hours. This lifecycle policy is a standard cost-optimization strategy for data lakes where historical or cold data does not require immediate access.

Exam trap

The trap here is that candidates often choose S3 Intelligent-Tiering or S3 Standard-IA as cost-saving measures without considering that the question specifically asks for lifecycle policy actions to reduce costs, and that Glacier Deep Archive and deleting incomplete multipart uploads are the most direct and effective actions for a data lake scenario.

53
MCQeasy

A company uses Amazon DynamoDB as its primary data store for a web application. The application experiences high latency during peak hours. The data engineer notices that the table has a large number of items with the same partition key. Which DynamoDB feature should the engineer use to improve performance?

A.Redesign the partition key to use a composite key that includes a timestamp or random suffix.
B.Enable DynamoDB Accelerator (DAX) to cache read requests.
C.Create a global table to replicate data across multiple Regions.
D.Enable auto scaling on the table to increase write capacity.
AnswerA

A well-designed partition key prevents hot spots by distributing writes evenly.

Why this answer

The high latency is caused by a hot partition, where many items share the same partition key, overwhelming a single DynamoDB partition. Redesigning the partition key to include a timestamp or random suffix distributes the workload evenly across partitions, improving throughput and reducing latency. This directly addresses the root cause of the performance issue.

Exam trap

The trap here is that candidates often confuse caching solutions (DAX) or scaling mechanisms (auto scaling) with the need to fix the data model itself, which is the only way to resolve a hot partition caused by a skewed partition key.

How to eliminate wrong answers

Option B is wrong because DynamoDB Accelerator (DAX) caches read requests, which can reduce read latency but does not solve the underlying hot partition issue caused by skewed write or read traffic on a single partition key. Option C is wrong because creating a global table replicates data across multiple Regions for disaster recovery or low-latency global access, but it does not distribute load within a single table's partitions. Option D is wrong because enabling auto scaling increases the table's provisioned capacity, but if the workload is concentrated on one partition, the partition's throughput limit (3000 RCU or 1000 WCU) will still be exceeded, causing throttling and high latency.

54
MCQeasy

A company needs to store JSON documents that are accessed by a key-value pattern. The data is 500 GB and requires single-digit millisecond latency. Which AWS database is most suitable?

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

DynamoDB is a NoSQL key-value and document database with low latency.

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 storing and retrieving JSON documents via a key-value access pattern. It supports document data types natively and can handle 500 GB of data efficiently with consistent low-latency performance.

Exam trap

The trap here is that candidates may choose Amazon RDS for MySQL because they associate JSON documents with relational databases, overlooking that DynamoDB is purpose-built for key-value and document workloads with guaranteed single-digit millisecond latency, while RDS introduces schema rigidity and higher latency for this pattern.

How to eliminate wrong answers

Option A is wrong because Amazon Redshift is a petabyte-scale data warehouse optimized for complex analytical queries using SQL, not for low-latency key-value lookups on JSON documents; it incurs higher latency and is not designed for single-digit millisecond access patterns. Option C is wrong because Amazon Neptune is a graph database optimized for highly connected data and graph queries (e.g., using Gremlin or SPARQL), not for simple key-value access to JSON documents; it would add unnecessary complexity and cost. Option D is wrong because Amazon RDS for MySQL is a relational database that requires predefined schemas and is not optimized for key-value access patterns on JSON documents; while it can store JSON, it lacks the native partitioning and low-latency throughput of DynamoDB for this use case.

55
Multi-Selecteasy

Which TWO methods can be used to enforce least-privilege access to an Amazon S3 bucket? (Choose two.)

Select 2 answers
A.Use IAM policies to grant specific permissions to users and roles.
B.Set bucket ACLs to allow full control to the bucket owner only.
C.Use an S3 bucket policy that explicitly denies actions not required.
D.Configure a VPC endpoint to restrict access to the bucket.
E.Generate pre-signed URLs for all access.
AnswersA, C

IAM policies allow granular permissions.

Why this answer

IAM policies allow you to grant granular, specific permissions to individual users and roles, adhering to the principle of least privilege by explicitly allowing only the actions required. This avoids granting broad or default permissions, ensuring that each identity has only the access necessary for its function.

Exam trap

The trap here is that candidates often confuse network-level controls (like VPC endpoints) with identity-based access controls, or they mistakenly think that granting full control to the owner is a form of least privilege, when in fact it violates the principle by providing excessive permissions.

56
Multi-Selectmedium

Which TWO actions can help improve query performance in Amazon Redshift? (Choose two.)

Select 2 answers
A.Use appropriate sort keys for tables.
B.Disable SSL encryption for connections.
C.Use VARCHAR instead of CHAR for fixed-length strings.
D.Apply compression encodings to columns.
E.Increase the number of nodes in the cluster.
AnswersA, D

Sort keys help the query optimizer scan less data.

Why this answer

Defining appropriate sort keys in Amazon Redshift enables the query optimizer to use zone maps to skip irrelevant data blocks during table scans, significantly reducing the amount of data read from disk. Sort keys also improve the effectiveness of merge joins and the performance of range-restricted queries by physically co-locating rows with similar sort key values on disk.

Exam trap

The trap here is that candidates often assume scaling out (adding nodes) always speeds up individual queries, but in Redshift, query performance is more dependent on data layout (sort keys, distribution, compression) than on cluster size, and adding nodes primarily benefits concurrent workloads rather than single-query latency.

57
MCQhard

A company runs a real-time analytics platform on Amazon ECS that ingests streaming data from Amazon Kinesis Data Streams, processes it, and stores results in Amazon DynamoDB. The data volume spikes unpredictably, causing DynamoDB to throttle write requests. The application uses on-demand capacity mode. The data engineer notices that the throttling occurs on a specific partition due to a hot key. The hot key is a customer ID that receives a disproportionate number of writes. The application cannot change the partition key design immediately. The engineer needs to reduce throttling while maintaining low latency. Which solution is most effective?

A.Switch to provisioned capacity with auto scaling and increase the write capacity units.
B.Implement a write buffer using Amazon SQS, and have consumers write to DynamoDB at a controlled rate.
C.Enable DynamoDB Accelerator (DAX) to cache the hot key writes.
D.Use DynamoDB Streams to trigger a Lambda function that retries throttled writes.
AnswerB

SQS decouples the producers from the writes, allowing batch processing and reducing throttling.

Why this answer

Buffering writes through Amazon SQS decouples the ingestion rate from DynamoDB's capacity, allowing consumers to write at a controlled pace. This directly mitigates throttling on the hot key without requiring a partition key redesign, and SQS provides low-latency, durable buffering suitable for real-time analytics.

Exam trap

The trap here is that candidates often assume on-demand capacity eliminates all throttling, but it does not protect against hot key skew; they may also confuse DAX's read caching with write buffering, or think retrying throttled writes is a viable solution rather than a reactive fix that increases latency.

How to eliminate wrong answers

Option A is wrong because switching to provisioned capacity with auto scaling does not solve the hot key issue; throttling occurs on a specific partition regardless of total capacity, and increasing write capacity units would not prevent a single partition from exceeding its 1,000 WCU limit. Option C is wrong because DAX is a caching layer for reads, not writes; it cannot buffer or absorb write throttling on a hot key. Option D is wrong because using DynamoDB Streams to retry throttled writes introduces latency and does not prevent throttling; it only retries failed writes, which can lead to backlog and increased latency, not a controlled rate.

58
MCQhard

A data engineer is designing a data lake on Amazon S3. The data is partitioned by year, month, day, and hour. The engineer needs to ensure that queries using Amazon Athena are cost-effective and performant. The data is written in Parquet format, and the total volume is 50 TB. Which approach minimizes query costs?

A.Use AWS Glue Data Catalog to catalog the data
B.Convert data to CSV format
C.Partition the data by year, month, day, and hour
D.Use S3 Intelligent-Tiering storage class
AnswerC

Partitioning allows Athena to scan only relevant partitions, reducing cost.

Why this answer

Partitioning by year, month, day, and hour allows Athena to use partition pruning, reading only the relevant S3 prefixes instead of scanning the entire 50 TB dataset. This drastically reduces the amount of data scanned per query, which directly lowers query costs (Athena charges per TB scanned). The existing Parquet format further optimizes performance through columnar storage and compression.

Exam trap

AWS often tests the misconception that simply cataloging data (Option A) or using a storage tier (Option D) directly improves query performance, when in fact only partitioning and efficient file formats reduce the data scanned by Athena.

How to eliminate wrong answers

Option A is wrong because using AWS Glue Data Catalog to catalog the data is a prerequisite for Athena to query the data, but it does not by itself reduce query costs or improve performance; it only provides schema and partition metadata. Option B is wrong because converting data to CSV format would increase the amount of data scanned (CSV is not columnar and lacks compression compared to Parquet), leading to higher query costs and slower performance. Option D is wrong because S3 Intelligent-Tiering is a storage class that optimizes storage costs based on access patterns, but it has no impact on Athena query costs or performance, which depend on data format and partitioning, not storage tier.

59
MCQmedium

A financial services company uses Amazon Redshift for its data warehouse. The cluster has two nodes and is used for complex analytical queries. The company recently migrated from a single-node cluster to a two-node cluster to improve performance. After the migration, the data engineer notices that query performance has not improved as expected. Some queries are even slower than before. The engineer checks the workload management (WLM) queue configuration and sees that there is only one queue with a concurrency level of 5. The queries are mostly large scans and aggregations. The cluster's CPU utilization is low, but disk I/O is high. What should the data engineer do to improve query performance?

A.Apply compression to the tables to reduce the amount of data scanned.
B.Increase the concurrency level in the WLM queue to allow more queries to run simultaneously.
C.Add more nodes or upgrade to a larger node type to increase memory and reduce disk spills.
D.Change the distribution style of large tables to DISTSTYLE ALL to avoid data redistribution.
AnswerC

More memory reduces disk I/O by allowing intermediate results to stay in memory.

Why this answer

The high disk I/O and low CPU utilization indicate that queries are spilling to disk because the cluster lacks sufficient memory for large scans and aggregations. Adding more nodes or upgrading to larger node types (e.g., from dc2.large to dc2.8xlarge) increases the total memory, reducing disk spills and improving performance. Option A is incorrect because applying compression reduces the amount of data scanned, but the bottleneck here is memory, not scan volume.

Option B is incorrect because increasing the concurrency level would allow more queries to run simultaneously, increasing contention and likely worsening performance. Option D is incorrect because changing distribution style to DISTSTYLE ALL can help with data redistribution but does not directly address memory spilling; the primary issue is insufficient memory.

60
MCQhard

An IAM policy is attached to a role assumed by authenticated users via Amazon Cognito. What does this policy allow?

A.Users can read and write items in the Orders table where the partition key matches their Cognito identity ID.
B.Users can read any item in the Orders table using GetItem and Query.
C.Users can scan the entire Orders table but only if they use a filter expression.
D.Users can read items in the Orders table only if the partition key matches their Cognito identity ID.
AnswerD

The LeadingKeys condition restricts based on the partition key equal to the Cognito sub.

Why this answer

The policy uses a condition key like `dynamodb:LeadingKeys` with a value referencing `${cognito-identity.amazonaws.com:sub}`. This restricts DynamoDB actions to items where the partition key matches the user's Cognito identity ID, ensuring fine-grained access control. Option D correctly states that users can read items only when the partition key equals their identity ID, which is the intended behavior for row-level security.

Exam trap

The trap here is that candidates often assume the policy grants full read access (Option B) or includes write permissions (Option A), overlooking the critical condition that restricts access to only items matching the user's Cognito identity ID.

How to eliminate wrong answers

Option A is wrong because it claims both read and write permissions, but the policy only grants read actions (e.g., GetItem, Query) and does not include write actions like PutItem or UpdateItem. Option B is wrong because it says users can read any item, but the condition restricts access to items where the partition key matches the user's Cognito identity ID, not all items. Option C is wrong because it suggests scanning the entire table with a filter expression, but the condition on the partition key applies before any filter, and Scan is typically not allowed or would be blocked by the leading key restriction.

61
MCQeasy

A company uses Amazon DynamoDB as the primary data store for a web application. The application experiences occasional throttling on write requests. The data engineer needs to implement a solution that handles throttling gracefully without losing data. Which approach should the engineer use?

A.Increase the provisioned write capacity to a higher value
B.Use an Amazon SQS queue to buffer write requests before sending to DynamoDB
C.Implement exponential backoff in the application's write retry logic
D.Enable DynamoDB Accelerator (DAX) to cache writes
AnswerC

Exponential backoff is a best practice to handle throttling effectively.

Why this answer

Implementing exponential backoff in the application's write retry logic is the standard AWS-recommended approach for handling DynamoDB throttling (ProvisionedThroughputExceededException). Exponential backoff gradually increases the wait time between retries, reducing the retry rate and allowing the throttling condition to subside, while ensuring no write data is lost as long as the retries eventually succeed. This approach is lightweight, requires no additional AWS services, and aligns with best practices for building resilient applications against DynamoDB throttling.

Exam trap

The trap here is that candidates often confuse DAX as a write cache or assume SQS is the only way to buffer writes, but the question specifically asks for handling throttling gracefully without losing data, and exponential backoff is the direct, built-in mechanism for retrying throttled requests in DynamoDB.

How to eliminate wrong answers

Option A is wrong because simply increasing provisioned write capacity may reduce throttling but does not handle throttling gracefully when it occurs; it also incurs higher costs and does not address the root cause of occasional spikes. Option B is wrong because using an SQS queue to buffer write requests introduces eventual consistency and potential data loss if the queue messages expire or are not processed before the DynamoDB write; it also adds complexity and latency, and is not the standard pattern for handling DynamoDB throttling directly. Option D is wrong because DynamoDB Accelerator (DAX) is an in-memory cache for reads only, not writes; it cannot cache write requests or mitigate write throttling.

62
MCQmedium

A company is using Amazon DynamoDB for a high-traffic web application. They notice increased read latency during peak hours. Which design change would best reduce read latency without increasing cost?

A.Increase read capacity units
B.Use DynamoDB global tables
C.Switch to strongly consistent reads
D.Enable DynamoDB Accelerator (DAX)
AnswerD

DAX is a caching layer that reduces read latency.

Why this answer

DynamoDB Accelerator (DAX) is an in-memory cache that reduces read latency from single-digit milliseconds to microseconds for eventually consistent reads, without requiring any changes to provisioned capacity. Since the question specifies reducing latency without increasing cost, DAX is ideal because it offloads read traffic from the underlying table, allowing you to potentially lower read capacity units (RCUs) while maintaining performance.

Exam trap

The trap here is that candidates often confuse increasing provisioned capacity (Option A) with reducing latency, but DynamoDB's internal latency is dominated by storage I/O and network round trips, not capacity units—DAX addresses the actual bottleneck by caching hot data in memory.

How to eliminate wrong answers

Option A is wrong because increasing read capacity units (RCUs) would directly increase cost, and while it can reduce throttling, it does not inherently reduce per-request latency caused by internal DynamoDB overhead or hot partitions. Option B is wrong because global tables are designed for multi-region replication and disaster recovery, not for reducing read latency within a single region; they would increase cost due to replication writes and cross-region traffic. Option C is wrong because switching to strongly consistent reads actually increases latency (as they require a quorum read from multiple storage nodes) and consumes twice the RCUs, thus increasing cost without improving performance.

63
MCQmedium

A data engineer is designing a data store for real-time analytics on high-velocity clickstream data. The data must be stored in a schema-on-read format and support SQL queries with sub-second latency. Which service should be used?

A.Amazon Redshift
B.Amazon Kinesis Data Firehose to S3 with Athena
C.Amazon Kinesis Data Analytics
D.Amazon DynamoDB
AnswerB

Firehose streams data to S3, Athena queries with schema-on-read and partitioning for low latency.

Why this answer

Amazon Kinesis Data Firehose can ingest high-velocity clickstream data and deliver it to Amazon S3, where it is stored in a schema-on-read format (e.g., Parquet or ORC). Amazon Athena then allows SQL queries directly on the data in S3 with sub-second latency when using partitions, columnar formats, and optimizations like AWS Glue Catalog. This combination meets the requirements for real-time analytics without predefining a schema.

Exam trap

The trap here is that candidates confuse Amazon Kinesis Data Analytics (which processes streams but does not store data) with a storage solution, or they assume Amazon Redshift is suitable for real-time streaming without recognizing its schema-on-write requirement and higher latency for ad-hoc queries.

How to eliminate wrong answers

Option A is wrong because Amazon Redshift requires a predefined schema (schema-on-write) and is optimized for batch analytics, not sub-second latency on high-velocity streaming data without significant preprocessing. Option C is wrong because Amazon Kinesis Data Analytics processes streaming data in real time using SQL but does not store the data persistently in a schema-on-read format; it is for transient analytics, not a data store. Option D is wrong because Amazon DynamoDB is a NoSQL key-value and document database that does not support SQL queries natively (it uses PartiQL with limitations) and is schema-on-write, not schema-on-read, making it unsuitable for ad-hoc SQL analytics on clickstream data.

64
MCQeasy

A data engineer needs to store semi-structured JSON logs from multiple microservices in a cost-effective manner for later analysis using Amazon Athena. The logs are generated continuously, and the total volume is about 1 TB per day. The data must be queryable within minutes of arrival. Which storage solution is most appropriate?

A.Amazon DynamoDB table with JSON attribute
B.Amazon RDS for PostgreSQL table with JSON column
C.Amazon S3 bucket with partitioned folders
D.Amazon Redshift cluster with JSON ingestion
AnswerC

S3 is cost-effective, and Athena can query the data directly.

Why this answer

Amazon S3 with partitioned folders is the most appropriate solution because it provides a cost-effective, scalable storage layer for semi-structured JSON logs, and integrates natively with Amazon Athena for serverless querying. By partitioning the data by time (e.g., year/month/day/hour), Athena can use partition pruning to minimize scanned data, enabling queries within minutes of arrival. S3's low cost per GB and lifecycle policies further optimize storage for the 1 TB/day volume.

Exam trap

AWS often tests the misconception that a data warehouse (Redshift) or a NoSQL database (DynamoDB) is required for analytical queries on semi-structured data, when in fact S3 with Athena is the most cost-effective and scalable solution for serverless ad-hoc analysis on raw logs.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB is optimized for key-value and document access patterns with low-latency reads/writes, not for ad-hoc analytical queries on large volumes of JSON logs; scanning 1 TB/day would be prohibitively expensive and slow, and it lacks native integration with Athena. Option B is wrong because Amazon RDS for PostgreSQL is a relational database designed for transactional workloads, not for storing and analyzing 1 TB/day of semi-structured logs; it would require manual partitioning, incur high storage costs, and cannot scale to petabyte-scale analytics efficiently. Option D is wrong because Amazon Redshift is a petabyte-scale data warehouse optimized for complex analytical queries, but it is overkill and more expensive than S3 for raw log storage; ingesting 1 TB/day of JSON logs into Redshift requires an ETL pipeline (e.g., COPY from S3) and incurs compute costs even when idle, whereas S3 with Athena is serverless and pay-per-query.

65
MCQmedium

A company uses Amazon DynamoDB to store session data for a web application. The application experiences throttling errors during peak traffic. The data engineer observes that the table's read capacity is consistently at 100% and the write capacity is at 20%. The engineer needs to resolve the throttling with minimal cost. Which solution should the engineer implement?

A.Increase the provisioned read capacity units for the table.
B.Enable DynamoDB auto scaling for read capacity.
C.Implement DynamoDB Accelerator (DAX) to cache read-heavy workloads.
D.Decrease the provisioned write capacity units to free up budget for reads.
AnswerC

DAX reduces read load on the table by caching, lowering required read capacity.

Why this answer

The issue is read-heavy throttling with read capacity at 100% while write capacity is low. Implementing DynamoDB Accelerator (DAX) provides an in-memory cache that offloads read traffic from the table, reducing read capacity consumption and eliminating throttling without increasing provisioned capacity. This is the most cost-effective solution as it avoids scaling costs and leverages caching for repeated reads.

Exam trap

The trap here is that candidates may assume scaling (auto scaling or increasing capacity) is the only solution for throttling, overlooking that caching with DAX can resolve read-heavy throttling at a lower cost by reducing the actual read load on the table.

How to eliminate wrong answers

Option A is wrong because increasing provisioned read capacity units would resolve throttling but at a higher ongoing cost, which contradicts the requirement for minimal cost. Option B is wrong because enabling DynamoDB auto scaling for read capacity would dynamically adjust capacity but still incur costs for higher read units during peak traffic, not minimizing cost as effectively as caching. Option D is wrong because decreasing provisioned write capacity units does not free up budget for reads in a meaningful way—DynamoDB pricing is separate for read and write capacity, and reducing writes doesn't directly alleviate read throttling or reduce read costs.

66
MCQeasy

A data engineer is reviewing the lifecycle configuration of an S3 bucket. The bucket stores log files. The engineer wants to ensure that objects are deleted after 365 days. What is the current behavior?

A.Objects are deleted after 365 days.
B.Objects are transitioned to S3 Standard-IA immediately.
C.Objects are transitioned to S3 Glacier after 365 days.
D.Noncurrent versions of objects are deleted after 365 days.
AnswerA

The expiration rule sets deletion after 365 days.

Why this answer

The lifecycle configuration is set to expire objects after 365 days, which means the S3 service will automatically delete the objects once they reach that age. Since the question states the engineer wants to ensure deletion after 365 days and the current behavior matches that, option A is correct. No transition actions are defined, so objects remain in the original storage class until expiration.

Exam trap

The trap here is that candidates often confuse expiration (deletion) with transition (moving to another storage class), or assume that a lifecycle rule for current versions automatically applies to noncurrent versions, which is not the case without explicit NoncurrentVersionExpiration configuration.

How to eliminate wrong answers

Option B is wrong because transitioning to S3 Standard-IA immediately would require a specific lifecycle rule with a transition action set to 0 days, which is not described in the scenario. Option C is wrong because transitioning to S3 Glacier after 365 days would require a transition action, not an expiration action, and the scenario only mentions deletion. Option D is wrong because deleting noncurrent versions after 365 days applies only to versioned buckets with a NoncurrentVersionExpiration action, which is not indicated in the current configuration.

67
Multi-Selecthard

A company is migrating an on-premises Apache Hadoop cluster to Amazon EMR. The cluster uses HDFS for storage. Which THREE features of Amazon EMR help reduce storage costs compared to on-premises HDFS? (Choose THREE)

Select 3 answers
A.Leverage Amazon S3 storage classes like S3 Standard-IA for older data.
B.Use instance store volumes for intermediate data.
C.Enable automatic data compression in EMRFS.
D.Use EMR File System (EMRFS) to store data in Amazon S3.
E.Attach Amazon EBS volumes to cluster nodes for persistent storage.
AnswersA, C, D

S3 storage classes allow cost optimization for infrequently accessed data.

Why this answer

Amazon S3 Standard-IA (Infrequent Access) offers lower storage costs than S3 Standard for data that is accessed less frequently, making it ideal for older or archival data in a Hadoop migration. By using S3 as the primary storage layer via EMRFS, you decouple compute from storage and avoid the replication overhead of HDFS (which typically uses 3x replication), significantly reducing storage costs.

Exam trap

The trap here is that candidates often confuse instance store volumes or EBS volumes as cost-saving alternatives, but the exam tests the understanding that S3-based storage with EMRFS is the primary mechanism for reducing storage costs in EMR by eliminating HDFS replication and enabling lifecycle management.

68
Multi-Selectmedium

A data engineer is using Amazon DynamoDB to store session data for a web application. The engineer wants to ensure that all data is encrypted at rest using an AWS managed key. Which step should the engineer take to achieve this?

Select 1 answer
A.Enable server-side encryption with S3-managed keys (SSE-S3) on the DynamoDB table. [wrong]
B.Disable encryption at rest to improve performance. [wrong]
C.Specify an AWS KMS customer managed key for encryption if required. [wrong]
D.Use client-side encryption before writing data to DynamoDB. [wrong]
E.Create the DynamoDB table with encryption at rest enabled using an AWS managed key. [CORRECT]
AnswersE

Correct. Creating the DynamoDB table with encryption at rest enabled using an AWS managed key (the default) ensures all data is encrypted with a key owned and managed by AWS.

Why this answer

Only option E is correct. DynamoDB encryption at rest is enabled by default for new tables using an AWS managed key (aws/dynamodb). Creating the table with encryption at rest enabled using an AWS managed key ensures all data is encrypted with a key managed by AWS.

Option C is incorrect because specifying a customer managed key would override the default AWS managed key, which does not meet the requirement to use an AWS managed key. Options A, B, and D are incorrect: SSE-S3 is for S3, disabling encryption is unsafe and does not meet the requirement, and client-side encryption is separate from at-rest encryption.

Exam trap

Candidates often confuse the encryption options across AWS services (e.g., applying S3-specific SSE-S3 to DynamoDB) or mistakenly think that specifying a customer managed key is equivalent to using an AWS managed key. The key distinction is that 'AWS managed key' means the key is owned and managed by AWS (e.g., aws/dynamodb), not a customer-managed KMS key.

69
MCQhard

A financial services company stores sensitive transaction data in an Amazon S3 bucket. Compliance requires that all objects be encrypted using SSE-KMS and that the bucket be protected from accidental deletion. Which combination of actions meets these requirements? (Select TWO.)

A.Enable MFA Delete on the bucket
B.Enable S3 Block Public Access
C.Add a bucket policy that denies PutObject if the object is not encrypted with SSE-KMS
D.Enable S3 Versioning on the bucket
E.Set default encryption to SSE-S3
AnswerC, D

This ensures all uploads use SSE-KMS.

Why this answer

A bucket policy with a condition denying PutObject unless the object's encryption status matches SSE-KMS (using the s3:x-amz-server-side-encryption-aws-kms-key-id condition key) enforces encryption at the upload level. This ensures that any object written to the bucket must be encrypted with a KMS key, meeting the compliance requirement.

Exam trap

The trap here is that candidates often confuse default encryption (which only applies when no encryption header is provided) with a bucket policy that enforces encryption on every upload, or they mistakenly think MFA Delete or Block Public Access can enforce encryption requirements.

How to eliminate wrong answers

Option A is wrong because MFA Delete protects against accidental deletion of objects and versions, but it does not enforce encryption requirements; it is a separate security control. Option B is wrong because S3 Block Public Access prevents public access to the bucket, but it has no effect on encryption enforcement. Option E is wrong because setting default encryption to SSE-S3 would encrypt objects at rest using Amazon S3-managed keys, not SSE-KMS, and it does not prevent users from uploading unencrypted objects via explicit overrides.

70
MCQeasy

A data engineer needs to store semi-structured JSON files that are accessed infrequently but must be retrievable within minutes. The data is immutable and must be stored cost-effectively. Which AWS service should the engineer use?

A.Amazon DynamoDB with on-demand capacity
B.Amazon EBS with gp3 volume
C.Amazon S3 with S3 Standard-IA storage class
D.Amazon RDS for PostgreSQL with JSONB data type
AnswerC

S3 is designed for object storage, supports JSON, and Standard-IA is cost-effective for infrequent access with millisecond retrieval.

Why this answer

Amazon S3 Standard-IA (Infrequent Access) is designed for data that is accessed less frequently but requires rapid retrieval when needed, with retrieval times in milliseconds. It offers lower storage costs than S3 Standard while maintaining high durability and availability, making it ideal for storing immutable semi-structured JSON files that must be retrievable within minutes. The service is cost-effective for infrequently accessed data because it charges a retrieval fee per GB, but the storage price is significantly lower than standard tiers.

Exam trap

The trap here is that candidates often confuse 'infrequently accessed' with 'archival' and choose Glacier or Deep Archive, but the requirement for retrieval within minutes eliminates those options, while DynamoDB or RDS seem plausible for JSON but are not cost-effective for immutable, infrequently accessed data.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB with on-demand capacity is a NoSQL database optimized for high-frequency, low-latency queries and is not cost-effective for infrequently accessed, immutable JSON files; it charges per read/write request unit and storage, which would be wasteful for archival-like data. Option B is wrong because Amazon EBS with gp3 volume is a block storage service designed for EC2 instances and requires an attached compute instance to access data, adding unnecessary cost and complexity; it is not a standalone object storage solution for infrequently accessed files. Option D is wrong because Amazon RDS for PostgreSQL with JSONB data type is a relational database service that incurs ongoing compute and storage costs, even when idle, and is overkill for storing immutable JSON files that are only occasionally retrieved; it is designed for transactional workloads and complex queries, not cost-effective archival storage.

71
MCQmedium

A company uses Amazon EMR to run Spark jobs on a cluster of 20 nodes. The cluster stores intermediate data on Amazon S3 using EMRFS. The company's data engineering team notices that the Spark jobs are running slower than expected. Upon investigating, they find that the cluster is experiencing high network I/O and that the S3 storage costs have increased significantly. The team suspects that the Spark jobs are writing too much intermediate data to S3. The jobs are performing many shuffle operations. The team wants to optimize the job performance and reduce costs without modifying the Spark application code. What should the data engineer do?

A.Enable S3 server-side encryption on the S3 bucket to reduce storage costs.
B.Increase the size of the EBS root volumes on the cluster nodes to store more intermediate data locally.
C.Configure the EMR cluster to use instance store volumes for intermediate data instead of EMRFS.
D.Add more nodes to the cluster to distribute the shuffle load.
AnswerC

Instance store provides local ephemeral storage, reducing S3 dependency and network I/O.

Why this answer

Configuring the EMR cluster to use instance store volumes for intermediate data instead of EMRFS reduces the amount of data written to Amazon S3 during shuffle operations. Instance store volumes provide local, ephemeral storage that is faster and avoids network I/O and S3 costs associated with EMRFS. This directly addresses the high network I/O and increased S3 storage costs without modifying the Spark application code.

Option A is incorrect because enabling S3 server-side encryption does not affect performance or reduce the volume of data written; it only encrypts data at rest. Option B is incorrect because increasing the size of EBS root volumes does not change how shuffle data is stored; EMR uses instance store or EMRFS for shuffle, not EBS root volumes. Option D is incorrect because adding more nodes may increase network I/O and cost, and does not prevent the job from writing intermediate data to S3.

72
Multi-Selectmedium

Which THREE of the following are valid storage classes in Amazon S3? (Choose THREE.)

Select 3 answers
A.S3 Standard
B.S3 Archive
C.S3 Intelligent-Tiering
D.S3 Cold
E.S3 One Zone-IA
AnswersA, C, E

S3 Standard is a general-purpose storage class.

Why this answer

S3 Standard is a valid storage class designed for frequently accessed data with low latency and high throughput. It offers 99.999999999% durability and 99.99% availability, making it suitable for a wide range of use cases like cloud applications, dynamic websites, and content distribution.

Exam trap

AWS often tests the distinction between valid S3 storage classes and fabricated names like 'S3 Archive' or 'S3 Cold', expecting candidates to recall the exact naming conventions (e.g., S3 Glacier, S3 Glacier Deep Archive) rather than generic terms.

73
Multi-Selectmedium

A data engineer is designing a disaster recovery strategy for an Amazon RDS for PostgreSQL database. The primary database is in us-east-1. Which TWO approaches provide cross-region disaster recovery?

Select 2 answers
A.Configure cross-region automated backups to copy to us-west-2.
B.Take a manual snapshot and copy it to us-west-2 daily.
C.Use Amazon S3 cross-region replication for the database export.
D.Enable Multi-AZ in us-east-1.
E.Create a cross-region read replica in us-west-2.
AnswersA, E

Backups are automatically copied and can be restored.

Why this answer

Amazon RDS supports cross-region automated backups, which automatically copy backup data (snapshots and transaction logs) from the primary region (us-east-1) to a secondary region (us-west-2). This provides a fully managed, automated disaster recovery solution that allows point-in-time recovery in the secondary region without manual intervention.

Exam trap

The trap here is that candidates often confuse Multi-AZ (which provides in-region high availability) with cross-region disaster recovery, or they assume manual snapshot copying is equivalent to automated cross-region backups, not realizing the significant difference in RPO and operational overhead.

74
MCQmedium

A data engineer is migrating an on-premises Apache HBase workload to Amazon DynamoDB. The application requires strongly consistent reads and the ability to query by a composite key (partition key + sort key). Which DynamoDB table design should be used?

A.Create a table with a partition key and sort key, and use ConsistentRead parameter.
B.Use a secondary index with strongly consistent reads.
C.Use a local secondary index (LSI) with the composite key.
D.Create a global secondary index (GSI) with the composite key.
AnswerA

Table key provides composite key querying; ConsistentRead ensures strong consistency.

Why this answer

DynamoDB natively supports strongly consistent reads when you use the `ConsistentRead` parameter set to `true` on GetItem, Query, or Scan operations. By defining a table with a partition key and sort key, you can directly query by the composite key (partition key + sort key) with strong consistency, meeting both requirements without additional infrastructure.

Exam trap

The trap here is that candidates assume secondary indexes (LSI or GSI) can provide strongly consistent reads, but DynamoDB explicitly restricts strong consistency to base table operations only.

How to eliminate wrong answers

Option B is wrong because secondary indexes (both LSI and GSI) in DynamoDB only support eventually consistent reads by default; strongly consistent reads are not supported on any secondary index. Option C is wrong because a local secondary index (LSI) does not replace the base table's composite key query capability; it provides an alternative sort key but still requires the base table for strongly consistent reads, and LSI itself cannot be read with strong consistency. Option D is wrong because a global secondary index (GSI) supports only eventually consistent reads and cannot be used for strongly consistent queries, regardless of the key schema.

75
MCQhard

A company is using Amazon ElastiCache for Redis to cache frequently accessed data. The cache hit ratio is low, and the engineering team suspects that the eviction policy is causing important data to be removed. Which eviction policy should be used to minimize eviction of the most frequently accessed keys?

A.allkeys-lru
B.allkeys-lfu
C.noeviction
D.volatile-lru
AnswerB

LFU evicts least frequently used keys, retaining popular ones.

Why this answer

The allkeys-lfu (Least Frequently Used) eviction policy is the correct choice because it explicitly tracks and retains keys that are accessed most frequently across the entire keyspace. Since the cache hit ratio is low due to eviction of important data, LFU ensures that frequently accessed keys are evicted last, directly addressing the problem of important data being removed.

Exam trap

The trap here is that candidates often confuse recency (LRU) with frequency (LFU), assuming that 'least recently used' also implies 'least frequently used,' but LRU can evict a frequently accessed key that hasn't been touched recently, which is exactly the problem described.

How to eliminate wrong answers

Option A is wrong because allkeys-lru (Least Recently Used) evicts keys based on recency of access, not frequency, so a frequently accessed key that hasn't been used recently could be evicted. Option C is wrong because noeviction returns errors for write operations when memory is full, which would cause application failures rather than solving the low hit ratio. Option D is wrong because volatile-lru only applies to keys with a TTL set, leaving keys without TTLs unprotected and potentially evicting important data that lacks an expiration.

Page 1 of 6 · 442 questions totalNext →

Ready to test yourself?

Try a timed practice session using only Data Store Management questions.