DP-3015: Getting Started with Cosmos DB NoSQL 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 ScheduleCustom Training Solution
Need training for your team? We'll create a customized program that fits your organization's specific needs.
Get Custom Quote