Microsoft just announced a new DP-420 Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB. That is why I want to share my new updated DP-420 Azure Cosmos DB Developer Specialty Certification Exam Study Guide with you. If you are passing the DP-420 exam, you will earn the Microsoft Certified Azure Cosmos DB Developer Specialty certification, which you understand how to implement and manage the operational aspects of cloud-native and hybrid data platform solutions built with Azure CosmosDB and Microsoft Azure Data Services.
Typical responsibilities for developers in this role include designing and implementing data models and data distribution, loading data into a database created with Azure Cosmos DB, and optimizing and maintaining the solution. These professionals integrate the solution with other Azure services. They also design, implement, and monitor solutions that consider security, availability, resilience, and performance requirements. Professionals in this role have experience developing apps for Azure and working with Azure Cosmos DB database technologies. They should be proficient at developing applications by using the Core (SQL) API and SDKs, writing efficient queries and creating appropriate index policies, provisioning and managing resources in Azure, and creating server-side objects with JavaScript. They should also be able to interpret JSON, read C# or Java code, and use PowerShell.
To learn and prepare for the exam, I usually use a couple of online resources, mainly Microsoft Docs and Microsoft Learn, which I am going to share with you. You can find more information about how I prepare for a Microsoft Certification exam on my blog post: How to prepare and pass Microsoft Certification Exam.
Also, check out other Microsoft Azure Certification Exam Study Guides:
- Exam AZ-900: Microsoft Azure Fundamentals Exam Study Guide
- Exam AZ-104: Microsoft Azure Administrator Exam Study Guide
- Exam AZ-204: Developing Solutions for Microsoft Azure Exam Study Guide
- Exam AZ-303: Microsoft Azure Architect Technologies Exam Study Guide
- Exam AZ-304: Microsoft Azure Architect Design Certification Exam Study Guide
- Exam AZ-305: Microsoft Azure Solutions Architect Certification Exam Study Guide
- Exam AZ-500: Microsoft Azure Security Technologies Exam Study Guide
- Exam AZ-600: Configuring and Operating a Hybrid Cloud with Microsoft Azure Stack Hub Exam Study Guide
- Exam AZ-700: Microsoft Azure Network Engineer Exam Study Guide
- Exam SC-900: Microsoft Security, Compliance, and Identity Fundamentals Exam Study Guide
Here is my DP-420 Study Guide Microsoft Azure Cosmos DB Associate Certification Exam Study Guide
It is essential to get familiar with the exam objectives and skills measured first. That is why I recommend reading the description of the exam and the skills measured.
DP-420 Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB
Microsoft Docs
A candidate for the Azure Cosmos DB Developer Specialty certification should have subject matter expertise designing, implementing, and monitoring cloud-native applications that store and manage data.
Responsibilities for this role include designing and implementing data models and data distribution, loading data into an Azure Cosmos DB database, and optimizing and maintaining the solution. These professionals integrate the solution with other Azure services. They also design, implement, and monitor solutions that consider security, availability, resilience, and performance requirements.
A candidate for this exam must have solid knowledge and experience developing apps for Azure and working with Azure Cosmos DB database technologies. They should be proficient at developing applications by using the Core (SQL) API and SDKs, writing efficient queries and creating appropriate index policies, provisioning and managing resources in Azure, and creating server-side objects with JavaScript. They should be able to interpret JSON, read C# or Java code, and use PowerShell.
The high-level view of the skills measured in the exam:
- Design and Implement Data Models (35–40%)
- Design and Implement Data Distribution (5–10%)
- Integrate an Azure Cosmos DB Solution (5–10%)
- Maintain an Azure Cosmos DB Solution (25–30%)
You can find more information on the exam website.
Free Online Microsoft Learn DP-420 Exam Study Guide resources
Microsoft Learn provides you with free online training and learning paths for different Microsoft technologies. They not just offer reading material, but also control questions and free online labs. Here are some relevant Microsoft Learn modules and learning paths for the DP-420 Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB Certification Exam. Microsoft Learn is an important part of my DP-420 Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB exam study guide.
The team also just made it easier to prepare with the new DP-420 related learning paths on Microsoft Learn. I highly recommend that you take these for your DP-420 exam preparation.
Microsoft Docs DP-420 Azure CosmosDB exam study guide resources
One thing I always used to prepare for my Microsoft exams is Microsoft Docs. Here are the relevant Microsoft Docs which I used to prepare and study for the DP-420 exam.
Design and Implement Data Models (35–40%)
Design and implement a non-relational data model for Azure Cosmos DB Core API
- Develop a design by storing multiple entity types in the same container
- Develop a design by storing multiple related entities in the same document
- Develop a model that denormalizes data across documents
- Develop a design by referencing between documents
- Identify primary and unique keys
- Identify data and associated access patterns
- Specify a default TTL on a container for a transactional store
- Data modeling in Azure Cosmos DB
- How to model and partition data on Azure Cosmos DB using a real-world example
- Create a synthetic partition key
- Unique key constraints in Azure Cosmos DB
- Azure Cosmos DB for the SQL Professional – Referencing Tables
- Indexing in Azure Cosmos DB – Overview
- Configure time to live in Azure Cosmos DB
Design a data partitioning strategy for Azure Cosmos DB Core API
- Choose a partition strategy based on a specific workload
- Choose a partition key
- Plan for transactions when choosing a partition key
- Evaluate the cost of using a cross-partition query
- Calculate and evaluate data distribution based on partition key selection
- Calculate and evaluate throughput distribution based on partition key selection
- Construct and implement a synthetic partition key
- Design partitioning for workloads that require multiple partition keys
- Partitioning and horizontal scaling in Azure Cosmos DB
- Create a synthetic partition key
- Getting started with SQL queries
- How to model and partition data on Azure Cosmos DB using a real-world example
- Data modeling in Azure Cosmos DB
Plan and implement sizing and scaling for a database created with Azure Cosmos DB
- Evaluate the throughput and data storage requirements for a specific workload
- Choose between serverless and provisioned models
- Choose when to use database-level provisioned throughput
- Design for granular scale units and resource governance
- Evaluate the cost of the global distribution of data
- Configure throughput for Azure Cosmos DB by using the Azure portal
- Partitioning and horizontal scaling in Azure Cosmos DB
- Azure Cosmos DB service quotas
- Introduction to provisioned throughput in Azure Cosmos DB
- Create Azure Cosmos containers and databases with autoscale throughput
- Plan and manage costs for Azure Cosmos DB
- Request Units in Azure Cosmos DB
- Convert the number of vCores or vCPUs in your nonrelational database to Azure Cosmos DB RU/s
- Optimize provisioned throughput cost in Azure Cosmos DB
- Provision standard (manual) throughput on a database in Azure Cosmos DB – SQL API
Implement client connectivity options in the Azure Cosmos DB SDK
- Choose a connectivity mode (gateway versus direct)
- Implement a connectivity mode
- Create a connection to a database
- Enable offline development by using the Azure Cosmos DB emulator
- Handle connection errors
- Implement a singleton for the client
- Specify a region for global distribution
- Configure client-side threading and parallelism options
- Enable SDK logging
- Azure Cosmos DB SQL SDK connectivity modes
- Performance tips for Azure Cosmos DB and .NET
- Diagnose and troubleshoot issues when using Azure Cosmos DB .NET SDK
- Troubleshoot issues when you use Azure Cosmos DB Java SDK v4 with SQL API accounts
- Performance tips for Azure Cosmos DB and .NET SDK v2
- Tutorial: Set up Azure Cosmos DB global distribution using the SQL API
- Global data distribution with Azure Cosmos DB – under the hood
- Distribute your data globally with Azure Cosmos DB
- Install and use the Azure Cosmos DB Emulator for local development and testing
- Monitor Azure Cosmos DB data by using diagnostic settings in Azure
Implement data access by using the Azure Cosmos DB SQL language
- Implement queries that use arrays, nested objects, aggregation, and ordering
- Implement a correlated subquery
- Implement queries that use array and type-checking functions
- Implement queries that use mathematical, string, and date functions
- Implement queries based on variable data
- Getting started with SQL queries
- Working with arrays and objects in Azure Cosmos DB
- SQL subquery examples for Azure Cosmos DB
- User-defined functions (UDFs) in Azure Cosmos DB
- System functions (Azure Cosmos DB)
- Date and time functions (Azure Cosmos DB)
- Mathematical functions (Azure Cosmos DB)
- String functions (Azure Cosmos DB)
- Parameterized queries in Azure Cosmos DB
Implement data access by using SQL API SDKs
- Choose when to use a point operation versus a query operation
- Implement a point operation that creates, updates, and deletes documents
- Implement an update by using a patch operation
- Manage multi-document transactions using SDK Transactional Batch
- Perform a multi-document load using SDK Bulk
- Implement optimistic concurrency control using ETags
- Implement session consistency by using session tokens
- Implement a query operation that includes pagination
- Implement a query operation by using a continuation token
- Handle transient errors and 429s
- Specify TTL for a document
- Retrieve and use query metrics
- Azure Cosmos DB .NET SDK v3 for SQL API: Download and release notes
- Azure Cosmos DB libraries for .NET
- Tutorial: Build a .NET console app to manage data in Azure Cosmos DB SQL API account
- Use the bulk executor .NET library to perform bulk operations in Azure Cosmos DB
- Bulk import data to Azure Cosmos DB SQL API account by using the .NET SDK
- Transactions and optimistic concurrency control
- Time to Live (TTL) in Azure Cosmos DB
- Indexing in Azure Cosmos DB – Overview
Implement server-side programming in Azure Cosmos DB Core API by using JavaScript
- Write, deploy, and call a stored procedure
- Design stored procedures to work with multiple items transactionally
- Implement triggers
- Implement a user-defined function
- JavaScript query API in Azure Cosmos DB
- Azure Cosmos DB client library for JavaScript – Version 3.14.1
- Develop a JavaScript application for Cosmos DB with SQL API
- How to write stored procedures and triggers in Azure Cosmos DB by using the JavaScript query API
- Stored procedures, triggers, and user-defined functions
- User-defined functions (UDFs) in Azure Cosmos DB
Design and Implement Data Distribution (5–10%)
Design and implement a replication strategy for Azure Cosmos DB
- Choose when to distribute data
- Define automatic failover policies for regional failure for Azure Cosmos DB Core API
- Perform manual failovers to move single master write regions
- Choose a consistency model
- Identify use cases for different consistency models
- Evaluate the impact of consistency model choices on availability and associated RU cost
- Evaluate the impact of consistency model choices on performance and latency
- Specify application connections to replicated data
- Distribute your data globally with Azure Cosmos DB
- How does Azure Cosmos DB provide high availability
- Global data distribution with Azure Cosmos DB – under the hood
- Configure Azure Cosmos DB account with periodic backup
- Data partitioning strategies
- Consistency levels in Azure Cosmos DB
- Partitioning and horizontal scaling in Azure Cosmos DB
Design and implement multi-region write
- Choose when to use multi-region write
- Implement multi-region write
- Implement a custom conflict resolution policy for Azure Cosmos DB Core API
- Configure multi-region writes in your applications that use Azure Cosmos DB
- Optimize multi-region cost in Azure Cosmos DB
Integrate an Azure Cosmos DB Solution (5–10%)
Enable Azure Cosmos DB analytical workloads
- Enable Azure Synapse Link
- Choose between Azure Synapse Link and Spark Connector
- Enable the analytical store on a container
- Enable a connection to an analytical store and query from Azure Synapse Spark or Azure Synapse SQL
- Perform a query against the transactional store from Spark
- Write data back to the transactional store from Spark
Implement solutions across services
- Integrate events with other applications by using Azure Functions and Azure Event Hubs
- Denormalize data by using Change Feed and Azure Functions
- Enforce referential integrity by using Change Feed and Azure Functions
- Aggregate data by using Change Feed and Azure Functions, including reporting
- Archive data by using Change Feed and Azure Functions
- Implement Azure Cognitive Search for an Azure Cosmos DB solution
Optimize an Azure Cosmos DB Solution (15–20%)
Optimize query performance in Azure Cosmos DB Core API
- Adjust indexes on the database
- Calculate the cost of the query
- Retrieve request unit cost of a point operation or query
- Implement Azure Cosmos DB integrated cache
Design and implement change feeds for an Azure Cosmos DB Core API
- Develop an Azure Functions trigger to process a change feed
- Consume a change feed from within an application by using the SDK
- Manage the number of change feed instances by using the change feed estimator
- Implement denormalization by using a change feed
- Implement referential enforcement by using a change feed
- Implement aggregation persistence by using a change feed
- Implement data archiving by using a change feed
Define and implement an indexing strategy for an Azure Cosmos DB Core API
- Choose when to use a read-heavy versus write-heavy index strategy
- Choose an appropriate index type
- Configure a custom indexing policy by using the Azure portal
- Implement a composite index
- Optimize index performance
Maintain an Azure Cosmos DB Solution (25–30%)
Monitor and troubleshoot an Azure Cosmos DB solution
- Evaluate response status code and failure metrics
- Monitor metrics for normalized throughput usage by using Azure Monitor
- Monitor server-side latency metrics by using Azure Monitor
- Monitor data replication in relation to latency and availability
- Configure Azure Monitor alerts for Azure Cosmos DB
- Implement and query Azure Cosmos DB logs
- Monitor throughput across partitions
- Monitor distribution of data across partitions
- Monitor security by using logging and auditing
Implement backup and restore for an Azure Cosmos DB solution
- Choose between periodic and continuous backup
- Configure periodic backup
- Configure continuous backup and recovery
- Locate a recovery point for a point-in-time recovery
- Recover a database or container from a recovery point
Implement security for an Azure Cosmos DB solution
- Choose between service-managed and customer-managed encryption keys
- Configure network-level access control for Azure Cosmos DB
- Configure data encryption for Azure Cosmos DB
- Manage control plane access to Azure Cosmos DB by using Azure role-based access control (RBAC)
- Manage data plane access to Azure Cosmos DB by using keys
- Manage data plane access to Azure Cosmos DB by using Azure Active Directory
- Configure Cross-Origin Resource Sharing (CORS) settings
- Manage account keys by using Azure Key Vault
- Implement customer-managed keys for encryption
- Implement Always Encrypted
Implement data movement for an Azure Cosmos DB solution
- Choose a data movement strategy
- Move data by using client SDK bulk operations
- Move data by using Azure Data Factory and Azure Synapse pipelines
- Move data by using a Kafka connector
- Move data by using Azure Stream Analytics
- Move data by using the Azure Cosmos DB Spark Connector
Implement a DevOps process for an Azure Cosmos DB solution
- Choose when to use declarative versus imperative operations
- Provision and manage Azure Cosmos DB resources by using Azure Resource Manager templates (ARM templates)
- Migrate between standard and autoscale throughput by using PowerShell or Azure CLI
- Initiate a regional failover by using PowerShell or Azure CLI
- Maintain index policies in production by using ARM templates
Additional Tips and Resources
I hope this DP-420 Microsoft Azure Cosmos DB Certification Exam Study Guide helps you pass the exam. I also recommend that you open a free Azure account if you don’t have one yet. You can create your free Azure account here. Also, check out my blog posts about Microsoft Azure Certification:
- Why you should become Microsoft Azure certified
- How to pick the right Azure exam certification path
- How to prepare and pass a Microsoft Azure exam
I hope you enjoyed my DP-420 Microsoft Azure Cosmos DB Study Guide. Did I miss any link, or do you have any recommended DP-420 Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB Certification Exam Study resources? Let me know in the comments.
Tags: Azure, Certification, Cloud, Cosmos DB, DP-420, Exam, Microsoft, Microsoft Azure, Study Guide Last modified: October 14, 2021
Thanks for the study guide. However, the list seems to be incomplete. Do you plan to add more details later?
Thank you, yes I will add some of the missing parts later
Can you recommend any good book about CosmosDB?