AWS Solutions Architect Design High-Performing Architectures: 256 practice questions
12 of the 256 Design High-Performing Architectures questions in the Certsqill AWS Solutions Architect bank, shown in full below. Each one carries an explanation for every option, not just the correct one — the wrong answers are where the marks go.
Preparing for AWS Solutions Architect? Take the free 5-min readiness check →
1. AWS Direct Connect with a dedicated 10 Gbps connection: Which connectivity solution meets these requirements?
- AWS Site-to-Site VPN over the public internet, encrypting traffic across shared and highly variable network pathsAWS VPN encrypts traffic over the public internet. Internet routing introduces variable latency, jitter, and bandwidth variability depending on internet congestion — directly violating the 'consistent bandwidth, no jitter' requirement.
- Amazon S3 Transfer Acceleration, speeding uploads through CloudFront while still using the public internetS3 Transfer Acceleration speeds up S3 uploads via CloudFront edge locations but still uses the public internet for the on-premises segment. It does not provide dedicated bandwidth or eliminate jitter from internet routing.
- AWS DataSync running over an AWS VPN tunnel, inheriting the bandwidth variability and jitter of the public internetDataSync accelerates and manages data transfers, but when combined with VPN (public internet), it inherits the bandwidth variability and jitter of the public internet. DataSync over Direct Connect would be more appropriate, but that option is not listed.
- AWS Direct Connect with a dedicated 10 Gbps connection providing private, consistent, and jitter-free bandwidth ✓AWS Direct Connect provides a private, dedicated physical connection between on-premises and AWS. It delivers consistent bandwidth, deterministic latency, and no bandwidth competition with public internet traffic — meeting all requirements. A 10 Gbps connection can transfer 50 TB in ~11 hours at full speed (or faster with multiple connections/ECMP).
AWS Direct Connect provides a dedicated private connection with consistent bandwidth, no internet jitter, and deterministic latency — required for high-volume HPC data transfers with SLA constraints.
2. CloudFront Functions for URL path rewriting: Which combination of CloudFront compute options is most appropria
- CloudFront Functions for JWT validation at the viewer request and Lambda@Edge for the simple URL path rewriting at the origin requestThis reverses the capabilities: CloudFront Functions cannot make the outbound network call that external JWT validation needs, while a simple path rewrite needs no network call and fits CloudFront Functions, so the roles are swapped.
- CloudFront Functions for URL path rewriting (viewer request), Lambda@Edge for JWT validation with external service call (origin request) ✓CloudFront Functions run at viewer request/response events with sub-millisecond execution, sub-1ms latency, and JavaScript-only runtime — perfect for simple path rewrites. Lambda@Edge is needed for JWT validation because it can make external network calls (to the auth service), has longer execution time limits (5 seconds at viewer events), and full Node.js/Python runtimes.
- Lambda@Edge for both the A/B URL path rewriting at viewer request and the JWT validation with the external authorization service call at the originLambda@Edge can do both, but using it for a trivial cookie-based path rewrite is wasteful; CloudFront Functions cost about one-sixth as much and run faster for simple rewrites, so this pairing is not the most appropriate.
- CloudFront Functions for both the A/B URL path rewriting and the JWT validation call out to the external authorization service before the originCloudFront Functions have no outbound network access, so they cannot call the external authorization service for JWT validation; that requirement forces Lambda@Edge for the origin-request step.
CloudFront Functions handle simple, sub-millisecond URL rewrites (no network calls); Lambda@Edge handles complex logic requiring external network calls like JWT validation with an auth service.
3. Amazon FSx for NetApp ONTAP: Which AWS storage service meets all these requirements?
- Amazon EFS with multi-protocol gatewayAmazon EFS supports NFSv4 only. It does not support SMB or iSCSI. There is no 'multi-protocol gateway' service that adds these protocols to EFS. EFS cannot serve as a SnapMirror replication target.
- Amazon FSx for OpenZFSFSx for OpenZFS provides NFS-accessible storage based on OpenZFS. It does not support SMB or iSCSI, and it is not NetApp ONTAP — it cannot be a SnapMirror replication target from on-premises NetApp systems.
- Amazon FSx for NetApp ONTAP ✓FSx for NetApp ONTAP is a fully managed service that runs ONTAP file system software on AWS. It supports NFS, SMB, and iSCSI simultaneously from the same volume, and supports NetApp SnapMirror replication from on-premises ONTAP systems to AWS — making it the only service that meets all three requirements.
- Amazon FSx for Windows File ServerFSx for Windows File Server supports SMB protocol and Windows-based access. It does not support NFS or iSCSI, and it is not NetApp ONTAP software — it runs Windows Server storage technology and cannot use SnapMirror.
FSx for NetApp ONTAP is the only AWS storage service that supports NFS, SMB, and iSCSI simultaneously on the same volume and acts as a SnapMirror replication target from on-premises ONTAP systems.
4. Use a Cognito User Pool authorizer for standard user: Which authorizer configuration supports both requirement
- Use a single Lambda authorizer on all endpoints that validates both Cognito-issued and third-party JWT tokens in codeA single Lambda authorizer can validate both token types with custom code, but this requires more development effort than using the built-in Cognito authorizer for Cognito tokens. The question asks for least development effort — using the native Cognito authorizer where possible minimizes custom code.
- Use IAM authorization on all endpoints and register both the Cognito users and the third-party services as IAM principalsIAM authorization uses AWS SigV4 signed requests — it requires all callers to have AWS credentials. Third-party services with their own JWT tokens would need AWS credentials, which is impractical and defeats the purpose of federated identity.
- Use a Cognito User Pool authorizer for standard user endpoints and a Lambda authorizer for the third-party JWT endpoint ✓Cognito User Pool authorizers natively validate JWTs issued by Cognito User Pools with zero code — ideal for the mobile app endpoints. Lambda authorizers execute custom logic to validate any token format or call any identity provider — perfect for third-party JWT validation where Cognito authorizer cannot be used.
- Use an API key on all endpoints and distribute separate keys to the mobile users and to the third-party servicesAPI keys are for usage plans and throttling control, not authentication. They do not verify user identity, cannot enforce fine-grained access control, and are not a substitute for JWT-based authentication.
A Cognito User Pool authorizer handles native Cognito JWT validation with no code; a Lambda authorizer handles custom third-party JWT validation — combining both minimizes development effort while supporting both identity providers.
5. Amazon Timestream: Which AWS database service is purpose-built for this?
- Amazon DynamoDB with a composite key of DeviceId + TimestampDynamoDB can store time-series data using DeviceId + Timestamp composite keys. However, it does not provide built-in time-series aggregation functions, data tiering/compression based on age, or time-series-specific SQL functions (interpolate, smooth, bin). DynamoDB requires custom application logic for time-series analysis.
- Amazon Timestream ✓Amazon Timestream is a fully managed time-series database built for IoT and operational metrics. It automatically organizes data in a memory store (recent data, fast writes) and a magnetic store (historical data, compressed), with automatic tiering. Timestream provides a SQL-like query language with built-in time-series functions (time_series, interpolate, smooth, bin) and scales to trillions of events per day.
- Amazon RDS PostgreSQL with a TimescaleDB extension for time-series optimizationTimescaleDB extends PostgreSQL with time-series optimization (hypertables, continuous aggregations). While powerful, it requires managing RDS instances, defining partition intervals, and configuring aggregations — more operational overhead than Timestream. TimescaleDB is not a native AWS managed service.
- Amazon OpenSearch Service with an index template using timestamp-based index patternsOpenSearch can store and query time-series data using Kibana dashboards, but it is optimized for log analytics and full-text search, not time-series metrics with interpolation and aggregation. It lacks Timestream's purpose-built time-series SQL functions and automatic storage tiering for IoT sensor data.
Amazon Timestream is purpose-built for IoT time-series data — automatic memory/magnetic storage tiering, built-in time-series SQL functions, and scales to trillions of events per day without DBA management.
6. CloudFront Functions for the cookie-based A/B URL: Which combination should the solutions architect use?
- CloudFront Functions for both operations, with DynamoDB Global Tables replicated into every CloudFront edge location so the JWT lookup can run at viewer request without a network hopDynamoDB Global Tables replicate to specific AWS Regions, not to the hundreds of CloudFront edge PoPs, and CloudFront Functions cannot make network calls regardless of where DynamoDB lives.
- CloudFront Functions for both the A/B URL rewriting and the DynamoDB JWT lookup, relying on their sub-millisecond runtime to validate entitlements at viewer request before serving contentCloudFront Functions cannot make any network calls (no DynamoDB access), are limited to about 1ms, and only manipulate request/response data already present. The JWT lookup cannot run there.
- CloudFront Functions for the cookie-based A/B URL rewriting at viewer request, and Lambda@Edge at the viewer-request event to query DynamoDB and validate the JWT before serving content ✓CloudFront Functions handle lightweight sub-millisecond rewrites and A/B tests but cannot make network calls. Lambda@Edge can query DynamoDB, run longer (up to 5s at viewer events), and validate the JWT.
- Lambda@Edge for both the cookie-based A/B URL rewriting and the DynamoDB JWT validation, running each at the viewer-request event so entitlements are checked before serving contentLambda@Edge can do both, but it is heavier and costlier for a simple URL rewrite, with higher latency and cold starts. The optimal design uses CloudFront Functions for the rewrite and reserves Lambda@Edge for the DynamoDB call.
CloudFront Functions handle lightweight viewer-request manipulations; Lambda@Edge handles operations requiring network calls or longer execution times.
7. Create three AWS Batch job queues with different: Which AWS Batch architecture achieves this?
- Deploy every job on Amazon ECS with Fargate, using Fargate Spot for archival and research jobs while running the urgent clinical jobs on standard on-demand Fargate capacityECS with Fargate can run batch containers but lacks AWS Batch's job queue priority system, job dependencies, array jobs, and managed Spot interruption handling built for batch computing. AWS Batch is purpose-built for this pattern and manages retry logic, queuing, and scaling automatically.
- Create three AWS Batch job queues with different priorities; connect each queue to a separate compute environment: urgent → On-Demand, research → Spot, archival → Spot with lower max vCPUs ✓AWS Batch job queues have priorities—higher priority queues get resources first when multiple queues target the same compute environment. By separating compute environments: urgent jobs use On-Demand (guaranteed capacity), research and archival use Spot (cost savings). Queues with different priorities ensure urgent jobs are never preempted by research or archival jobs.
- Create one AWS Batch job queue connected to a single Spot compute environment, then assign a higher job priority value to each urgent clinical job at submission time so it schedules firstA single Spot compute environment means all job types compete for the same Spot capacity, so urgent clinical jobs could be disrupted by Spot interruptions. Job priorities set scheduling order, but Spot reclaims can terminate any running job regardless of priority—urgent jobs need guaranteed On-Demand capacity.
- Run the urgent clinical jobs on AWS Lambda for immediate execution while sending the research and archival jobs to AWS Batch on Spot compute environments for cost savingsLambda functions have a 15-minute maximum execution time and limited compute (up to 10 GB memory). Genomics analysis jobs typically run for hours and require significant compute. Lambda is not suitable for long-running batch genomics workloads.
Three AWS Batch job queues with different compute environments (On-Demand for urgent, Spot for lower-priority) ensures urgent jobs run immediately while research and archival maximize Spot savings.
8. Amazon Managed Streaming for Apache Kafka: Which AWS service should a solutions architect recommend?
- Self-managed Apache Kafka running on Amazon EC2 instances with Auto Scaling groups, giving full broker control while preserving complete Kafka client compatibility.Incorrect. Self-managed Kafka on EC2 maintains Kafka compatibility but does NOT minimize infrastructure management overhead — it maximizes it. The company must manage broker configuration, patching, monitoring, and failure handling themselves. Amazon MSK provides the same compatibility with significantly less management overhead.
- Amazon Managed Streaming for Apache Kafka (MSK), which provides a fully managed Kafka service compatible with existing Kafka clients and APIs. ✓Correct. Amazon MSK is a fully managed Apache Kafka service. Existing Kafka client applications work without code changes because MSK is fully API-compatible with Apache Kafka. MSK manages broker provisioning, patching, and availability, significantly reducing infrastructure management overhead compared to self-managed Kafka clusters.
- Amazon Kinesis Data Streams, which provides a fully managed, scalable streaming service exposing Kafka-compatible APIs for all existing consumer applications.Incorrect. Amazon Kinesis Data Streams does NOT have Kafka-compatible APIs. Kinesis uses its own SDKs and APIs (PutRecord, GetRecord, Kinesis Client Library). Migrating from Kafka to Kinesis requires rewriting all producer and consumer applications — violating the no-code-change requirement.
- Amazon Kinesis Data Firehose, which auto-scales to ingest 1 TB per day and routes streaming records without any infrastructure management.Incorrect. Amazon Kinesis Data Firehose is a data delivery service for loading streaming data into destinations like Amazon S3, Redshift, and OpenSearch. It does not support Kafka client protocols, consumer groups, or the pub/sub model. It is a near-real-time delivery pipeline, not a general-purpose Kafka replacement.
Amazon MSK is fully API-compatible with Apache Kafka, allowing existing Kafka client applications to work without code changes, while managing the underlying Kafka infrastructure.
9. Amazon FSx for Windows File Server: Which AWS storage service should a solutions architect recommend?
- Amazon FSx for NetApp ONTAP, which is optimized for Linux NFS workloads and cannot enforce NTFS permissions or join an Active Directory domain for Windows SMB clients.Incorrect. This description is wrong: FSx for NetApp ONTAP is a multi-protocol service that does support SMB and Active Directory. However, for a Windows-only migration that needs native Windows file sharing, the purpose-built choice is FSx for Windows File Server, so ONTAP is not the recommended answer here.
- Amazon EFS, which offers elastic NFSv4 shared storage but relies on POSIX permissions and cannot present SMB shares or honor NTFS Active Directory access controls.Incorrect. Amazon EFS uses the NFSv4 protocol with POSIX permissions and targets Linux workloads. It does not expose SMB shares, enforce NTFS permissions, or integrate with Active Directory, so Windows EC2 instances cannot use it with native Windows file sharing.
- Amazon EBS Multi-Attach with io2 volumes, which shares a raw block device across instances but exposes no SMB file share and requires a cluster-aware filesystem to coordinate writes.Incorrect. EBS Multi-Attach lets an io2 volume attach to multiple Nitro-based instances, but it presents a raw block device and needs a cluster-aware filesystem to manage concurrent writes. It provides no SMB file share, NTFS permissions, or Active Directory integration, so it is not a Windows file sharing solution.
- Amazon FSx for Windows File Server, which provides a fully managed native Windows file system with SMB protocol, NTFS, Active Directory integration, and DFS Namespaces support. ✓Correct. Amazon FSx for Windows File Server is a fully managed Windows-native shared file system. It supports SMB protocol, NTFS permissions, Active Directory integration (AWS Managed AD or self-managed AD), DFS Namespaces, and Windows ACLs. It is the purpose-built AWS service for Windows file sharing workloads.
Amazon FSx for Windows File Server is the purpose-built managed service for Windows SMB file shares with full NTFS, Active Directory, and DFS support — the correct choice for Windows file sharing migrations.
10. Use a provisioned IOPS SSD EBS volume for the application: Which solution best meets the requirements?
- Use a provisioned IOPS SSD EBS volume for the application data. ✓Provisioned IOPS SSD is intended for demanding workloads that require predictable latency and high IOPS while retaining EBS block-storage semantics.
- Use a gp3 EBS volume and rely on its independent IOPS and throughput settings.gp3 permits independent provisioning, but the stated consistently demanding, predictable performance profile is better matched to provisioned IOPS SSD.
- Use Regional EFS mounted by the instance for the transactional block data.Regional EFS provides shared managed NFS file storage, but it does not provide the required EBS block-storage model for this single-instance transactional workload.
- Use a st1 Throughput Optimized HDD EBS volume for the transactional data.st1 is designed for large sequential workloads, not demanding random transactional I/O, so it does not satisfy the access pattern.
Provisioned IOPS SSD EBS is the appropriate fit for persistent block storage requiring demanding, predictable random I/O performance.
11. Create a Regional EFS file system and mount it: Which solution best meets these requirements?
- Create a Regional EFS file system and mount it from the Linux instances with appropriate network permissions. ✓Regional EFS provides managed shared NFS access for Linux instances across Availability Zones and is designed for resilient regional file storage.
- Use FSx for Windows File Server with Active Directory integration and mount its SMB share from the Linux instances.FSx for Windows addresses Windows-compatible SMB and Active Directory requirements, which are not the workload’s Linux shared-NFS requirement.
- Create a One Zone EFS file system and mount it from all instances to minimize latency and administration.One Zone EFS can provide shared file access but does not meet the stated Availability Zone failure requirement.
- Attach one gp3 EBS volume to instances in each Availability Zone and synchronize files between the volumes.Separate EBS volumes do not provide one shared filesystem; synchronization adds application and operational complexity and can produce inconsistent copies.
Regional EFS supplies shared Linux file access with regional Availability Zone resilience and managed operations.
12. Use a persistent FSx for Lustre file system integrated: Which solution best meets these requirements?
- Use a persistent FSx for Lustre file system integrated with an S3 data repository. ✓Persistent FSx for Lustre provides shared, high-performance Linux file storage while S3 retains the durable source dataset.
- Attach a provisioned-IOPS EBS volume to one instance and expose it through that instance.A normally attached EBS volume is not a suitable shared file system for hundreds of concurrent instances across Availability Zones.
- Use an FSx for Lustre scratch file system and periodically copy results to S3.Scratch storage is intended for temporary workloads and cannot be the sole durable copy during file-system loss.
- Use Regional EFS mounted by every compute instance, with S3 storing the source dataset.Regional EFS provides resilient shared Linux files, but it does not target the high-performance compute-intensive access pattern as directly as Lustre.
Persistent FSx for Lustre supplies high-performance shared Linux file access, while S3 provides the durable repository.
244 more Design High-Performing Architectures questions
The remaining 244 questions in this domain are part of the full AWS Solutions Architect bank — 1061 questions, every option explained. Start with the free five-minute check and see your score per domain.
Test your AWS Solutions Architect readiness — freeOther AWS Solutions Architect domains
- Design Secure Architectures — 325 questions →
- Design Resilient Architectures — 272 questions →
- Design Cost-Optimized Architectures — 208 questions →
- All 1061 AWS Solutions Architect questions →