DP-420 — Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB
Microsoft

Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB (DP-420) Practice Questions

★★★★★★ 4.9 130 verified reviews
100 questions
June 17, 2026 updated
✓ Online quiz simulator

Domain coverage

  • Design and implement data models
  • Design and implement data distribution
  • Integrate an Azure Cosmos DB solution
  • Optimize an Azure Cosmos DB solution
  • Maintain an Azure Cosmos DB solution

Sample Questions (10 of 100 shown)

Q1 Design and Implement Data Models (35-40%)
You are developing an application that will save device metrics produced by various IoT devices every minute. You decide to collect data for two entities: the devices themselves and the metrics generated by each device. You are about to create two containers for the two entities, but your data engineer suggests keeping both entities in one container instead of two different containers. What should you do?
  1. Create one document with a deviceid attribute and other device data, and add a type attribute with a value of 'device'. Then create another document for each metric data using the devicemetricsid attribute.
  2. Create one document with a deviceid attribute and other device data. Then embed each metric collection within the document, containing devicemetricsid attribute and all metric data.
  3. Create one document with a deviceid attribute and other device data, and add a type attribute with a value of 'device'. Create another document for each metric data using devicemetricsid and deviceid attributes, and add a type attribute with a value of 'devicemetrics'.
  4. None of the above.
✓ Correct Answer: C
If you create two different types of documents and include the deviceid attribute for both entities, it facilitates referencing both entities within the container. Option A doesn't include deviceid for metric documents, making it impossible to reference which device the metric belongs to. Embedding metrics every minute as in Option B would generate excessive RUs.
Q2 Design and Implement Data Models (35-40%)
You have a container in an Azure Cosmos DB for NoSQL account. The container configuration shows TTL (Time to Live) is enabled but no default value is set. Which statement correctly describes the container configuration?
  1. All items will be deleted after 1 hour.
  2. All items will be deleted after 1 month.
  3. Items will only expire if they have a TTL value set.
  4. Items stored in the container will always be retained regardless of item TTL values.
✓ Correct Answer: C
TTL can be set at the container level or at the item level. The configuration shown enables TTL at the container level but does not set a default number of seconds. This means items will only expire based on their own TTL values, not a container-level default.
Q3 Design and Implement Data Models (35-40%)
In a shared throughput database, containers share the throughput (RU/s) allocated to the database. In manual provisioned throughput mode, a database can have a maximum of ______ containers and requires a minimum of ______ RU/s.
  1. 15 and 400
  2. 25 and 400
  3. 15 and 4000
  4. 25 and 4000
✓ Correct Answer: B
In manual provisioned throughput mode, a shared throughput database can have a maximum of 25 containers and requires a minimum of 400 RU/s.
Q4 Design and Implement Data Models (35-40%)
You have a database in an Azure Cosmos DB for NoSQL account configured for multi-region writes. You need to use the Azure Cosmos DB SDK to implement the conflict resolution policy for a container. The solution must ensure that any conflict is sent to the conflict feed. You set ConflictResolutionMode to Custom. You set ResolutionProcedure to a custom stored procedure. You configure the custom stored procedure to use the conflictingItems parameter to resolve conflicts. Does this meet the goal?
  1. Yes
  2. No
✓ Correct Answer: A
Setting ConflictResolutionMode to Custom and using a custom stored procedure that processes the conflictingItems parameter is the correct way to implement custom conflict resolution. The conflictingItems parameter contains the list of conflicting items that the stored procedure can process.
Q5 Design and Implement Data Models (35-40%)
You have a database in an Azure Cosmos DB for NoSQL account configured for multi-region writes. You need to use the Azure Cosmos DB SDK to implement the conflict resolution policy for a container. The solution must ensure that any conflict is sent to the conflict feed. You set ConflictResolutionMode to Custom. You set ResolutionProcedure to a custom stored procedure. You configure the custom stored procedure to use the isTombstone parameter to resolve conflicts. Does this meet the goal?
  1. Yes
  2. No
✓ Correct Answer: B
The isTombstone parameter is used for delete conflicts, not for general conflict resolution. To send conflicts to the conflict feed, the stored procedure should use the conflictingItems parameter, not isTombstone.
Q6 Design and Implement Data Models (35-40%)
You need to create a data store for a directory of small and medium-sized businesses (SMBs). The data store must meet the following requirements:
  • Store companies and the users employed by them. Each company will have less than 1,000 users.
  • Some users have data that is greater than 2 KB.
  • Associate each user to only one company.
  • Provide the ability to browse by company.
  • Provide the ability to browse the users by company.
  • Whenever a company or user profile is selected, show a details page for the company and all the related users.
  • Be optimized for reading data.
Which design should you implement?
  1. In a directory container, create a document for each company and a document for each user. Use company ID as the partition key.
  2. In a company container, create a document for each company. Embed the users into company documents. Use the company ID as the partition key.
  3. Create a user container that uses the user ID as the partition key and a company container that uses the company ID as the partition key. Add the company ID to each user document.
  4. In a user container, create a document for each user. Embed the company into each user document. Use the user ID as the partition key.
✓ Correct Answer: B
Since each company has less than 1,000 users (well under the 2 MB document size limit), embedding users within the company document is the optimal design for read-heavy workloads. Using company ID as the partition key ensures all related data is in the same logical partition, enabling efficient queries.
Q7 Design and Implement Data Models (35-40%)
You have a database named db1 in an Azure Cosmos DB for NoSQL account. You are creating a new container named coll1. The application will have the following characteristics:
  • New orders will be created frequently by different customers.
  • Customers will often view their past order history.
You need to select the partition key value for coll1 to support the application while minimizing costs.
  1. id
  2. customerId
  3. orderDate
  4. orderId
✓ Correct Answer: B
Using customerId as the partition key is the best choice because it allows customers to efficiently query their own order history (a single partition query). Since different customers create orders, the workload will be distributed across partitions without creating hot spots.
Q8 Design and Implement Data Models (35-40%)
You need to select the partition key for an IoT telemetry container. The solution must meet IoT telemetry requirements. What should you select?
  1. the timestamp
  2. the humidity
  3. the temperature
  4. the device ID
✓ Correct Answer: D
For IoT telemetry workloads, device ID (deviceId) is the typical natural partition key. Using device ID distributes data evenly across partitions as each device writes to its own partition, avoiding hot partitions that would occur with timestamp-based keys.
Q9 Design and Implement Data Models (35-40%)
You need to design an Azure Cosmos DB SQL API solution for storing data from various IoT devices. The devices will write data every second. You need to select a partition key that meets the following requirements:
  • Avoid hot partitions
  • Avoid capacity limits
  • Reduce partition skew
  1. Create a synthetic key that includes deviceId and a random suffix.
  2. Create a synthetic key that includes deviceId and deviceManufacturer.
  3. Create a synthetic key that includes deviceId and sensorValue.
  4. Use timestamp as the partition key.
✓ Correct Answer: A
To distribute workload evenly in a write-intensive scenario, appending a random number to the partition key is a common pattern. This prevents all writes from hitting the same partition (hot partition). Using deviceId with a random suffix ensures writes are evenly distributed across all physical partitions.
Q10 Design and Implement Data Models (35-40%)
You need to create a container in an Azure Cosmos DB for NoSQL account to store employee data for 2,500 small companies. Each company is expected to have at most 30 employees, and each employee will have an email_Address value. You need to ensure that email_Address is unique per employee within each company. Which fields should you set as the partition key and unique key respectively?
  1. Company_ID (partition key), Email_Address (unique key)
  2. Email_Address (partition key), Company_ID (unique key)
  3. Employee_ID (partition key), Email_Address (unique key)
  4. Email_Address (partition key), Employee_ID (unique key)
✓ Correct Answer: A
Choosing Company_ID as the partition key stores all employees of the same company in the same logical partition. Within that partition, setting Email_Address as a unique key ensures no duplicate email addresses exist per company. This is an efficient design for the described workload.

You've viewed 3 of 100 questions. Start the free practice exam to answer all questions with instant feedback.

Exam overview

Building cloud-native applications on Azure Cosmos DB requires a fundamentally different approach to data modeling than traditional relational databases — and DP-420, the Cosmos DB Developer Specialty exam, validates your ability to design data models, optimize for performance and cost, and maintain globally distributed NoSQL solutions at scale. The exam is uniquely weighted: data modeling and partitioning strategy (Domain 1) accounts for 35–40% of the assessment, making it by far the most critical skill area, while data distribution and integration domains together represent only 10–20%. This weighting reflects the reality that partition key selection and document modeling decisions have the single largest impact on Cosmos DB cost, latency, and scalability.

No formal prerequisite certifications are required to register for DP-420, but Microsoft recommends practical experience developing cloud-native applications on Azure, the ability to read and troubleshoot application code in C# or Java, familiarity with JSON payloads, and working knowledge of PowerShell or Azure CLI. Because the exam includes interactive code snippet completions using the Azure Cosmos DB for NoSQL SDK — both C# and Java — hands-on experience with the SDK's point operations, query operations, TransactionalBatch, and Bulk Support is essential. The official preparation path is the Microsoft Learn Cosmos DB Developer Specialty learning track, which covers SDK connectivity, custom index tailoring, and application optimization.

Five domains define DP-420's skill measurement with a heavily skewed distribution. Design and Implement Data Models (35–40%) is the dominant domain, covering NoSQL data modeling patterns (embedding vs. referencing), logical partition key selection based on access patterns, synthetic and hierarchical partition keys, hot partition mitigation, RU overhead of cross-partition queries, SDK point vs. query operations, TransactionalBatch for multi-item transactions, Bulk Support for high-volume loading, and JavaScript stored procedures, triggers, and UDFs. Design and Implement Data Distribution (5–10%) covers regional failover policies, five consistency levels (Strong, Bounded Staleness, Session, Consistent Prefix, Eventual), multi-region writes configuration, and custom conflict resolution policies. Integrate an Azure Cosmos DB Solution (5–10%) covers Change Feed processor with Azure Functions integration, Azure Synapse Link, analytical store, and independent TTL for transactional vs. analytical layers. Optimize an Azure Cosmos DB Solution (15–20%) tests RU cost analysis, query performance tuning, composite indexes for multi-filter and ORDER BY optimization, and the integrated cache. Maintain an Azure Cosmos DB Solution (25–30%) covers network isolation with private endpoints, RBAC with Microsoft Entra ID, primary/secondary key management, periodic and continuous backups, Point-in-Time Restore (PITR), Azure Monitor metrics, Log Analytics diagnostics, and IaC deployment.

Approach your DP-420 preparation by mastering data modeling and partition key design first — Domain 1's 35–40% weight means poor partition key choices will cascade into failures across cost optimization, query performance, and scaling scenarios. Each practice question includes a detailed walkthrough of the Cosmos DB design decisions — why a synthetic partition key with a hash suffix distributes write load more evenly than a natural key with low cardinality, how to calculate RU consumption for a point read vs. a cross-partition query using request header analysis, which consistency level satisfies a 10-millisecond write latency SLA while maintaining causal consistency guarantees, and how to configure Change Feed processor with a lease container for exactly-once event delivery to an Azure Functions trigger. The downloadable PDF packages the same question bank for offline study, so you can review partition key selection matrices, consistency level comparison tables, and JavaScript stored procedure patterns during commutes or in restricted environments. Because the Specialty-level exam grants access to Microsoft Learn documentation during the test, our practice questions are designed to be attempted without documentation first, forcing you to internalize the RU calculation formulas, indexing policy JSON schema, and SDK method signatures before relying on the searchable reference.

Official Exam Domains & Weighting

To successfully pass the DP-420 exam, candidates must master the following core domains:
  • Domain 1: Design and implement data models — 35–40%
Covers NoSQL data modeling patterns including embedding vs. referencing related entities based on access patterns, logical partition key selection using write/read distribution analysis, synthetic and hierarchical partition key design, hot partition mitigation strategies, and RU overhead estimation for cross-partition queries. SDK topics include point operations vs. query operations, TransactionalBatch for multi-item transactions, Bulk Support for high-volume loading, and JavaScript stored procedures, pre-/post-triggers, and User-Defined Functions (UDFs) for server-side logic.
  • Domain 2: Design and implement data distribution — 5–10%
Focuses on automated regional failover policy definition for disaster resilience, manual single-master write region redirection, and consistency level selection across Strong, Bounded Staleness, Session, Consistent Prefix, and Eventual. Multi-region writes deployment covers dynamic replication flow management and custom application-level conflict resolution policy configuration for the NoSQL API.
  • Domain 3: Integrate an Azure Cosmos DB solution — 5–10%
Tests event-driven integration using the Cosmos DB Change Feed processor with Azure Functions or background microservices as change handlers. Analytical engine topics include enabling Azure Synapse Link or Fabric integration, configuring the analytical store, and setting independent Time-to-Live (TTL) parameters for transactional and analytical layers.
  • Domain 4: Optimize an Azure Cosmos DB solution — 15–20%
Covers SQL query syntax optimization for the NoSQL API, RU cost calculation and request header analysis for point operation charges, integrated cache configuration for read-heavy workloads, and indexing policy customization including write-heavy vs. read-heavy index plans, composite indexes for ORDER BY and multi-filter optimization, and dynamic indexing JSON payload modification.
  • Domain 5: Maintain an Azure Cosmos DB solution — 25–30%
Tests network isolation using private endpoints, service endpoints, and resource firewalls, Azure RBAC with Microsoft Entra ID identities, and primary/secondary account key management. Data lifecycle topics include periodic and continuous backup configuration, Point-in-Time Restore (PITR) job execution, and recovery window tracking. Observability covers Azure Monitor metric thresholds, Log Analytics diagnostic log analysis, and IaC provisioning via Azure PowerShell or Azure CLI.

What Our Customers Say 130 verified reviews

4.9 ★★★★★★ Based on 130 reviews
★★★★★
These Microsoft exam dumps for DP-420 saved me weeks of study time. The questions cover every domain thoroughly.
— Jessica W.
★★★★★★
The DP-420 certification opened up a promotion for me at work. These practice questions were a big part of that success.
— Ryan J.
★★★★★★
The question explanations for DP-420 really dig into the AWS (or relevant) concepts. Helped me understand things at a deeper level.
— Hazel C.
★★★★★★
Got the DP-420 certification after three weeks of self-study with this question bank. Very happy with the purchase.
— Victoria K.
★★★★★★
Lifetime access was the selling point for me. Got sidetracked for a few months and came back — everything was still there for DP-420.
— Layla S.
★★★★★
Best investment for Microsoft certification prep. The question bank for DP-420 is comprehensive and mirrors the real exam perfectly.
— Sarah M.

Log in to rate this exam and leave a review.

Submitted for moderation before publishing. Keep it helpful and respectful.

Frequently Asked Questions

The most challenging areas tend to center on the heavy math and logic behind Request Unit (RU) calculation and scaling. Candidates frequently struggle with questions that require them to precisely balance data modeling tradeoffs — specifically, predicting exactly how a chosen partition key or composite index configuration will impact RU costs for a given mix of read and write operations. Another common pitfall is misunderstanding the scope of JavaScript-based stored procedures, which can only perform transactional operations on items that share the exact same logical partition key. Candidates also frequently misconfigure multi-region writes conflict resolution policies, failing to distinguish between last-writer-wins (LWW) and custom conflict resolution for different data consistency requirements. Our practice questions reproduce these exact scenarios with step-by-step RU calculation and SDK code walkthroughs.

The Microsoft Certified: Azure Cosmos DB Developer Specialty credential expires exactly one year from the date you pass the exam. To maintain active status, you must complete a free, unproctored online renewal assessment on Microsoft Learn during the 6-month window prior to expiration. Renewal assessments focus on Cosmos DB updates and new features released during the preceding 12 months.

If you do not achieve the passing score of 700 on your first attempt, you must wait at least 24 hours before retaking. For a third or subsequent attempt, a strict 14-day cooling-off period is enforced between each registration. You are limited to a maximum of five total attempts within any rolling 12-month window. Each attempt requires the standard $165 USD exam fee unless protected by an Exam Replay voucher.

Yes. Like all Specialty-level Microsoft exams, DP-420 provides access to live Microsoft Learn documentation via a split-screen interface inside the Pearson VUE secure delivery environment. You can search and read official documentation during the exam, but external forums, GitHub repositories, and sandbox environments are not accessible. Our practice tests are designed to be attempted without documentation access first, building the partition key design intuition and RU calculation mental models you will need to navigate the docs efficiently under time pressure.

The mock exam includes data modeling questions where you must evaluate access patterns to determine whether to embed or reference related entities, select logical partition keys with write/read distribution analysis, design synthetic partition keys for even load distribution, and calculate RU costs for point reads vs. cross-partition queries. SDK code questions cover TransactionalBatch usage for multi-item transactions, Bulk Support configuration for high-volume ingestion, Change Feed processor initialization with lease container configuration, and JavaScript stored procedure deployment for transactional operations scoped to a single logical partition key. Consistency level scenarios test your ability to map application requirements (latency SLAs, causal consistency guarantees, read-your-writes semantics) to the correct consistency level. Every practice question includes a detailed RU calculation breakdown and SDK code walkthrough.

Yes, our complete DP-420 practice test is available as a downloadable PDF package that includes all scenario-based questions, data modeling exercises, SDK code snippet completions, and detailed answer explanations. The PDF covers every domain: Design and Implement Data Models (embedding vs. referencing, synthetic partition keys, RU calculation, stored procedures, TransactionalBatch), Design and Implement Data Distribution (consistency levels, multi-region writes, failover policies, conflict resolution), Integrate a Cosmos DB Solution (Change Feed processor, Synapse Link, analytical store), Optimize (composite indexes, integrated cache, indexing policy JSON), and Maintain (private endpoints, RBAC, PITR backup, Azure Monitor, IaC). Download the PDF for offline review during commutes or in restricted network environments.

AZ-305 (Azure Solutions Architect Expert) covers Cosmos DB at the architecture design level — selecting Cosmos DB as a data store, choosing an API, evaluating multi-region consistency models, and estimating high-level costs — but does not test SDK-level coding, RU calculation, indexing policy JSON configuration, Change Feed processor setup, or JavaScript stored procedure authoring. DP-900 (Azure Data Fundamentals) covers Cosmos DB at the conceptual level only — knowing that Cosmos DB is a globally distributed NoSQL database with multiple APIs. DP-420 is the only Microsoft certification that tests hands-on Cosmos DB development at the SDK level, including point operation RU analysis via request headers, composite index schema design for query optimization, TransactionalBatch programming patterns, and Change Feed lease container management. If your daily work involves writing C# or Java code against the Cosmos DB SDK, designing partition strategies, and optimizing for RU consumption, DP-420 is the certification that validates those specific development skills.