Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB (DP-420) Practice Exam
Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB (DP-420) Practice Exam
4.7(785 ratings)
1,068 Learners
What’s Included
No. of Questions288
AccessImmediate
Access DurationLife Long Access
Exam DeliveryOnline
Test ModesPractice, Exam
Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB (DP-420) Practice Exam
The Microsoft Azure Cosmos DB is a globally distributed NoSQL database service designed for high availability, performance, and scalability. The Designing and Implementing Cloud-Native Applications Using Microsoft Azure Cosmos DB (DP-420) exam validates your skills in utilizing Azure Cosmos DB for developing cloud-native applications.
Who should take the exam?
Software engineers tasked with building applications using the Azure Cosmos DB NoSQL API and SDKs.
Individuals with experience in C#, Python, Java, or JavaScript who want to leverage Azure Cosmos DB for their applications.
Those with a basic understanding of SQL or NoSQL database platforms and some experience with Azure PowerShell.
Roles and Responsibilities
Cloud Software Engineer: Designing, developing, and maintaining cloud-native applications that utilize Azure Cosmos DB for data storage and retrieval.
Full-Stack Developer (Cloud Focus): Developing both front-end and back-end components of cloud applications, potentially leveraging Azure Cosmos DB for data persistence.
DevOps Engineer (Cloud Specialization): Working within DevOps teams to deploy and manage cloud applications that use Azure Cosmos DB.
Exam Details
Provider: Microsoft
Format: Computer-based exam with multiple-choice questions (no simulations)
Number of Questions: Typically 80 questions (subject to change) - Refer to the official exam blueprint for the latest information.
Duration: 90 minutes
Passing Score: Minimum score not publicly disclosed by Microsoft (generally around 70%)
Course Outline
Domain 1 - Understand to Design and implement data models (35–40%)
1.1 Design and implement a non-relational data model for Azure Cosmos DB for NoSQL
Learning to Develop a design by storing multiple entity types in the same container
Learning to Develop a design by storing multiple related entities in the same document
Learning to Develop a model that denormalizes data across documents
Learning to Develop a design by referencing between documents
Learning to Identify primary and unique keys
Learning to Identify data and associated access patterns
Learning to Specify a default TTL on a container for a transactional store
1.2 Design a data partitioning strategy for Azure Cosmos DB for NoSQL
Learning to Choose a partitioning strategy based on a specific workload
Learning to Choose a partition key
Learning to Plan for transactions when choosing a partition key
Learning to Evaluate the cost of using a cross-partition query
Learning to Calculate and evaluate data distribution based on partition key selection
Learning to Calculate and evaluate throughput distribution based on partition key selection
Learning to Construct and implement a synthetic partition key
Learning to Design and implement a hierarchical partition key
Learning to Design partitioning for workloads that require multiple partition keys
1.3 Plan and implement sizing and scaling for a database created with Azure Cosmos DB
Learning to Evaluate the throughput and data storage requirements for a specific workload
Learning to Choose between serverless and provisioned models
Learning to Choose when to use database-level provisioned throughput
Learning to Design for granular scale units and resource governance
Learning to Evaluate the cost of the global distribution of data
Learning to Configure throughput for Azure Cosmos DB by using the Azure portal
1.4 Implement client connectivity options in the Azure Cosmos DB SDK
Learning to Choose a connectivity mode (gateway versus direct)
Learning to Implement a connectivity mode
Learning to Create a connection to a database
Learning to Enable offline development by using the Azure Cosmos DB emulator
Learning to Handle connection errors
Learning to Implement a singleton for the client
Learning to Specify a region for global distribution
Learning to Configure client-side threading and parallelism options
Learning to Enable SDK logging
1.5 Implement data access by using the SQL language for Azure Cosmos DB for NoSQL
Learning to Implement queries that use arrays, nested objects, aggregation, and ordering
Learning to Implement a correlated subquery
Learning to Implement queries that use array and type-checking functions
Learning to Implement queries that use mathematical, string, and date functions
Learning to Implement queries based on variable data
1.6 Implement data access by using Azure Cosmos DB for NoSQL SDKs
Learning to Choose when to use a point operation versus a query operation
Learning to Implement a point operation that creates, updates, and deletes documents
Learning to Implement an update by using a patch operation
Learning to Manage multi-document transactions using SDK Transactional Batch
Learning to Perform a multi-document load using Bulk Support in the SDK
Learning to Implement optimistic concurrency control using ETags
Learning to Override default consistency by using query request options
Learning to Implement session consistency by using session tokens
Learning to Implement a query operation that includes pagination
Learning to Implement a query operation by using a continuation token
Learning to Handle transient errors and 429s
Learning to Specify TTL for a document
Learning to Retrieve and use query metrics
1.7 Implement server-side programming in Azure Cosmos DB for NoSQL by using JavaScript
Learning to Write, deploy, and call a stored procedure
Learning to Design stored procedures to work with multiple documents transactionally
Learning to Implement and call triggers
Learning to Implement a user-defined function
Domain 2 - Understand to Design and implement data distribution (5–10%)
2.1 Design and implement a replication strategy for Azure Cosmos DB
Learning to Choose when to distribute data
Learning to Define automatic failover policies for regional failure for Azure Cosmos DB for NoSQL
Learning to Perform manual failovers to move single master write regions
Learning to Choose a consistency model
Learning to Identify use cases for different consistency models
Learning to Evaluate the impact of consistency model choices on availability and associated RU cost
Learning to Evaluate the impact of consistency model choices on performance and latency
Learning to Specify application connections to replicated data
2.2 Design and implement multi-region write
Learning to Choose when to use multi-region write
Learning to Implement multi-region write
Learning to Implement a custom conflict resolution policy for Azure Cosmos DB for NoSQL
Domain 3 - Integrate an Azure Cosmos DB solution (5–10%)
3.1 Enable Azure Cosmos DB analytical workloads
Learning to Enable Azure Synapse Link
Learning to Choose between Azure Synapse Link and Spark Connector
Learning to Enable the analytical store on a container
Learning to Enable a connection to an analytical store and query from Azure Synapse Spark or Azure Synapse SQL
Learning to Perform a query against the transactional store from Spark
Learning to Write data back to the transactional store from Spark
3.2 Implement solutions across services
Learning to Integrate events with other applications by using Azure Functions and Azure Event Hubs
Learning to Denormalize data by using Change Feed and Azure Functions
Learning to Enforce referential integrity by using Change Feed and Azure Functions
Learning to Aggregate data by using Change Feed and Azure Functions, including reporting
Learning to Archive data by using Change Feed and Azure Functions
Learning to Implement Azure Cognitive Search for an Azure Cosmos DB solution
Domain 4 - Understand to Optimize an Azure Cosmos DB solution (15–20%)
4.1 Optimize query performance when using the API for Azure Cosmos DB for NoSQL
Learning to Adjust indexes on the database
Learning to Calculate the cost of the query
Learning to Retrieve request unit cost of a point operation or query
Learning to Implement Azure Cosmos DB integrated cache
4.2 Design and implement change feeds for Azure Cosmos DB for NoSQL
Learning to Develop an Azure Functions trigger to process a change feed
Learning to Consume a change feed from within an application by using the SDK
Learning to Manage the number of change feed instances by using the change feed estimator
Learning to Implement denormalization by using a change feed
Learning to Implement referential enforcement by using a change feed
Learning to Implement aggregation persistence by using a change feed
Learning to Implement data archiving by using a change feed
4.3 Define and implement an indexing strategy for Azure Cosmos DB for NoSQL
Learning to Choose when to use a read-heavy versus write-heavy index strategy
Learning to Choose an appropriate index type
Learning to Configure a custom indexing policy by using the Azure portal
Learning to Implement a composite index
Learning to Optimize index performance
Domain 5 - Understand to Maintain an Azure Cosmos DB solution (25–30%)
5.1 Monitor and troubleshoot an Azure Cosmos DB solution
Learning to Evaluate response status code and failure metrics
Learning to Monitor metrics for normalized throughput usage by using Azure Monitor
Learning to Monitor server-side latency metrics by using Azure Monitor
Learning to Monitor data replication in relation to latency and availability
Learning to Configure Azure Monitor alerts for Azure Cosmos DB
Learning to Implement and query Azure Cosmos DB logs
Learning to Monitor throughput across partitions
Learning to Monitor distribution of data across partitions
Learning to Monitor security by using logging and auditing
5.2 Implement backup and restore for an Azure Cosmos DB solution
Learning to Choose between periodic and continuous backup
Learning to Configure periodic backup
Learning to Configure continuous backup and recovery
Learning to Locate a recovery point for a point-in-time recovery
Learning to Recover a database or container from a recovery point
5.3 Implement security for an Azure Cosmos DB solution
Learning to Choose between service-managed and customer-managed encryption keys
Learning to Configure network-level access control for Azure Cosmos DB
Learning to Configure data encryption for Azure Cosmos DB
Learning to Manage control plane access to Azure Cosmos DB by using Azure role-based access control (RBAC)
Learning to Manage data plane access to Azure Cosmos DB by using keys
Learning to Manage data plane access to Azure Cosmos DB by using Microsoft Azure Active Directory (Azure AD)
Learning to Configure Cross-Origin Resource Sharing (CORS) settings
Learning to Manage account keys by using Azure Key Vault
Learning to Implement customer-managed keys for encryption
Learning to Implement Always Encrypted
5.4 Implement data movement for an Azure Cosmos DB solution
Learning to Choose a data movement strategy
Learning to Move data by using client SDK bulk operations
Learning to Move data by using Azure Data Factory and Azure Synapse pipelines
Learning to Move data by using a Kafka connector
Learning to Move data by using Azure Stream Analytics
Learning to Move data by using the Azure Cosmos DB Spark Connector
5.5 Implement a DevOps process for an Azure Cosmos DB solution
Learning to Choose when to use declarative versus imperative operations
Learning to Provision and manage Azure Cosmos DB resources by using Azure Resource Manager templates (ARM templates)
Learning to Migrate between standard and autoscale throughput by using PowerShell or Azure CLI
Learning to Initiate a regional failover by using PowerShell or Azure CLI
Learning to Maintain indexing policies in production by using ARM templates