Цель курса – ознакомить слушателей с основами разработки приложений, использующих Azure Cosmos DB в качестве решения NoSQL. Слушатели узнают о ключевых концепциях, архитектуре и возможностях Cosmos DB, научатся проектировать и разрабатывать гибкие и масштабируемые приложения, а также работать с различными API, доступными в Cosmos DB, для эффективного хранения и обработки данных.
Аудитория
Курс предназначен для разработчиков программного обеспечения, инженеров по данным и ИТ-специалистов, которые хотят изучить основы работы с Cosmos DB и внедрять NoSQL-решения в свои проекты. Он также будет полезен студентам и специалистам, желающим расширить свои знания о современных подходах к хранению и обработке данных в распределенных системах.
По окончании курса слушатели смогут:
-
Оценить, является ли Azure Cosmos DB для NoSQL подходящей базой данных для их приложения
-
Создавать ресурсы базы данных, контейнеров и элементов для учетной записи Azure Cosmos DB для NoSQL
-
Мигрировать между стандартным и автоскейлимым пропускным способностями
-
Интегрировать библиотеку Microsoft.Azure.Cosmos SDK из NuGet
-
Подключаться к учетной записи Azure Cosmos DB для NoSQL с использованием SDK и .NET
-
Понимать, как настраивать Azure Cosmos DB для NoSQL SDK различными способами, включая интеграцию с эмулятором, реализацию параллелизма и создание пользовательского логгера
-
Писать код для создания, чтения, обновления и удаления элементов в Azure Cosmos DB для NoSQL
-
Создавать SQL-запросы для Azure Cosmos DB для NoSQL с использованием подзапросов или произведений
-
Применять стратегии моделирования данных и партиционирования для поддержки эффективной и масштабируемой NoSQL базы данных
-
Поддерживать ссылочную целостность своих данных с помощью функций отслеживания изменений
Необходимая подготовка
Для эффективного обучения на курсе слушатели должны обладать следующими знаниями и навыками:
-
Опыт написания кода, который взаимодействует с SQL- или NoSQL-базой данных
-
Опыт программирования на C#
Модуль 1: Введение в Azure Cosmos DB для NoSQL
Темы
-
Что такое Azure Cosmos DB для NoSQL
-
Как работает Azure Cosmos DB для NoSQL
-
Когда следует использовать Azure Cosmos DB для NoSQL
Модуль 2: Попробуйте Azure Cosmos DB для NoSQL
Темы
-
Изучение ресурсов
-
Обзор основных операций
Лабораторная работа: Создание учетной записи Azure Cosmos DB для NoSQL
Модуль 3: Планирование требований к ресурсам
Темы
-
Понимание пропускной способности
-
Оценка требований к пропускной способности
-
Оценка требований к хранению данных
-
Время жизни (TTL)
-
Планирование хранения данных с учетом времени жизни (TTL)
Модуль 4: Настройка базы данных Azure Cosmos DB для NoSQL и контейнеров
Темы
-
Безсерверный режим
-
Сравнение безсерверного и выделенного пропускного способности
-
Автоматическое масштабирование пропускной способности
-
Сравнение автоматического масштабирования и стандартной (ручной) пропускной способности
-
Миграция между стандартной (ручной) и автоматической пропускной способностью
Лабораторная работа: Настройка пропускной способности для Azure Cosmos DB SQL API с использованием портала Azure
Модуль 5: Использование SDK Azure Cosmos DB для NoSQL
Темы
-
Понимание SDK
-
Импорт из диспетчера пакетов
-
Подключение к онлайн-учетной записи
-
Реализация клиентского синглтона
-
Настройка режима подключения
Лабораторная работа: Подключение к Azure Cosmos DB для NoSQL с помощью SDK
Модуль 6: Настройка SDK Azure Cosmos DB для NoSQL
Темы
-
Включение оффлайн-разработки
-
Обработка ошибок подключения
-
Реализация потоковой обработки и параллелизма
-
Настройка логирования
Лабораторная работа: Настройка SDK Azure Cosmos DB для NoSQL для оффлайн-разработки
Модуль 7: Реализация точечных операций в Azure Cosmos DB для NoSQL
Темы
-
Понимание точечных операций
-
Создание документов
-
Чтение документа
-
Обновление документов
-
Настройка значения времени жизни (TTL) для конкретного документа
-
Удаление документов
Лабораторная работа: Создание и обновление документов с помощью SDK Azure Cosmos DB для NoSQL
Модуль 8: Запрос к Azure Cosmos DB для NoSQL
Темы
-
Понимание языка SQL
-
Создание запросов с использованием SQL
-
Проецирование результатов запроса
-
Реализация проверки типов в запросах
-
Использование встроенных функций
-
Выполнение запросов в SDK
Лабораторная работа: Выполнение запроса с помощью SDK Azure Cosmos DB для NoSQL
Модуль 9: Автор сложных запросов с Azure Cosmos DB для NoSQL
Темы
-
Создание запросов с перекрестным произведением
-
Реализация коррелированных подзапросов
-
Реализация переменных в запросах
-
Пагинация результатов запроса
Лабораторная работа: Пагинация результатов запроса с перекрестным произведением с помощью SDK Azure Cosmos DB для NoSQL
Модуль 10: Реализация нереляционной модели данных
Темы
-
В чем разница между NoSQL и реляционными базами данных?
-
Идентификация паттернов доступа для вашего приложения
-
Когда внедрять или ссылаться на данные
Лабораторная работа: Измерение производительности для сущностей клиентов
-
Выбор ключа партиции
-
Моделирование маленьких вспомогательных сущностей
Модуль 11: Проектирование стратегии партиционирования данных
Темы
-
Денормализация данных в вашей модели
-
Управление ссылочной целостностью с использованием потоков изменений
-
Объединение нескольких сущностей в одном контейнере
-
Денормализация агрегатов в одном контейнере
-
Финализация модели данных
Лабораторная работа: Передовые модели проектирования