👨‍🏫 Instructor-Led Training

DP-3015: Getting Started with Cosmos DB NoSQL Development

Course Code: DP-3015
Duration: 1 Day
Level: Intermediate
Category: Software Development

Course Overview

Course Description

This one-day, instructor-led course equips developers with the skills to design, implement, and manage cloud-native applications using Azure Cosmos DB for NoSQL. Participants will gain hands-on experience with the Microsoft.Azure.Cosmos SDK, learning to perform CRUD operations, execute complex queries, and implement efficient data models and partitioning strategies. The course emphasizes best practices for scalability, performance optimization, and integration with other Azure services.


Target Audience

Ideal for:

  • Software Engineers and Developers aiming to build scalable, globally distributed applications using Azure Cosmos DB for NoSQL.

  • Professionals with experience in C# or other supported languages (e.g., JavaScript, Python, Java) and familiarity with SQL or NoSQL databases.

  • Teams transitioning from traditional relational databases to NoSQL solutions in the Azure ecosystem.

Prerequisites:

  • Familiarity with C# programming.

  • Experience with SQL or NoSQL database platforms.

  • Basic understanding of cloud concepts and the Azure portal.


Course Outline

Module 1: Introduction to Azure Cosmos DB for NoSQL

  • Overview of Azure Cosmos DB and its NoSQL offerings.

  • Understanding the benefits of a globally distributed, multi-model database.

  • Identifying scenarios where Azure Cosmos DB is the optimal choice.

Module 2: Getting Started with Azure Cosmos DB for NoSQL

  • Creating a new Azure Cosmos DB for NoSQL account.

  • Setting up databases, containers, and items.

  • Exploring the Azure portal for resource management.

Module 3: Planning Resource Requirements

  • Evaluating throughput needs using Request Units (RUs).

  • Configuring serverless and provisioned throughput models.

  • Understanding Time-to-Live (TTL) settings for data retention.

Module 4: Connecting to Azure Cosmos DB with the SDK

  • Integrating the Microsoft.Azure.Cosmos SDK into your application.

  • Establishing connections to Azure Cosmos DB accounts.

  • Configuring SDK settings for optimal performance

Module 5: Accessing and Managing Data

  • Performing CRUD operations (Create, Read, Update, Delete) using the SDK.

  • Implementing point operations and cross-document transactions.

  • Handling bulk data processing efficiently.

Module 6: Executing Queries in Azure Cosmos DB

  • Crafting SQL-like queries to retrieve data.

  • Utilizing built-in functions and projections.

  • Implementing correlated subqueries and pagination.

Module 7: Designing Data Models and Partitioning Strategies

  • Building non-relational data models tailored to application needs.

  • Selecting appropriate partition keys for scalability.

  • Applying denormalization and embedding techniques.

Module 8: Implementing Indexing Strategies

  • Understanding default and custom indexing policies.

  • Configuring composite and spatial indexes.

  • Optimizing query performance through indexing.

Module 9: Integrating with Azure Services

  • Consuming the change feed using the SDK.

  • Triggering Azure Functions based on data changes.

  • Enhancing search capabilities with Azure Cognitive Search.

Module 10: Implementing Replication and Consistency Models

  • Configuring multi-region replication and failover.

  • Choosing between strong, bounded staleness, and eventual consistency models.

  • Managing multi-region writes and conflict resolution.

Module 11: Optimizing Performance and Monitoring

  • Customizing indexing policies for read and write-heavy workloads.

  • Measuring and analyzing query and operation costs.

  • Implementing integrated caching to reduce latency.

Module 12: Managing Azure Cosmos DB with DevOps Practices

  • Automating resource management using Azure Resource Manager (ARM) templates.

  • Writing management scripts for routine operations.

  • Integrating with CI/CD pipelines for continuous deployment.

Module 13: Creating Server-Side Programming Constructs

  • Developing stored procedures, user-defined functions (UDFs), and triggers.

  • Implementing multi-item transactions for atomic operations.

  • Extending query and transaction functionalities within Azure Cosmos DB.


Hands-On Experience

Approximately 40–50% of the course is dedicated to hands-on exercises, allowing participants to:

  • Provision and configure Azure Cosmos DB for NoSQL accounts and resources.

  • Perform CRUD operations and execute complex queries using the SDK.

  • Design and implement data models and partitioning strategies.

  • Integrate with Azure services like Azure Functions and Cognitive Search.

  • Apply indexing and replication strategies to optimize performance.

  • Utilize DevOps practices for resource management and automation.

Ready to Get Started?

Join thousands of professionals who have advanced their careers with our training programs.

Join Scheduled Training

Find upcoming sessions for this course and register for instructor-led training with other professionals.

View Schedule

Custom Training Solution

Need training for your team? We'll create a customized program that fits your organization's specific needs.

Get Custom Quote