Сводка
Из этого модуля мы узнали об основных понятиях и методах, которые используются для моделирования и секционирования данных для баз данных NoSQL, таких как Azure Cosmos DB. Мы применили их к нашему приложению электронной коммерции, которое нам требовалось перевести с реляционной базы данных на базу данных NoSQL. В этом модуле мы узнали, в том числе, о следующем.
- Различия между реляционными базами данных и БД NoSQL: вы узнали, как базы данных NoSQL, такие как Azure Cosmos DB, являются горизонтально масштабируемыми, тогда как реляционные базы данных обычно масштабируются вертикально.
- Использование шаблонов доступа для моделирования данных: вы узнали, что понимание закономерности доступа приложения к данным играет важную роль в способах моделирования и секционирования данных.
- Встраивание и ссылка: вы узнали, когда следует внедрять разные сущности в одном документе, а когда следует ссылаться на данные и сохранять их в виде отдельных строк.
- Выбор ключа секции: вы узнали основные понятия, касающиеся выбора ключа секции. Сведения о том, как избежать наличия "горячих" разделов и как работать с рабочими нагрузками, в которых данные считываются и записываются слишком интенсивно.
- Моделирование данных поиска или ссылки: наконец, вы узнали моделирование данных, которые используются в качестве ссылки или поиска для других данных.
Все эти принципы и методики мы применили к нашей реляционной базе данных, чтобы смоделировать ее для базы данных NoSQL. Мы смоделировали три сущности клиентов и внедрили все три в один документ. Это привело к увеличению производительности за счет сокращения количества запросов к данным.
Мы также смоделировали сущности категории продукта и тега продукта. Кроме того, мы воспользовались специальным методом, который сократил требования к свободному месту и пропускной способности для небольших таблиц подстановки.
Теперь, когда работа с этим модулем завершена, вы можете:
- Определение шаблонов доступа для данных.
- Применение модели данных и стратегий секционирования для поддержки эффективной и масштабируемой базы данных NoSQL.
Подробнее
- Общие сведения о различиях между NoSQL и реляционными базами данных
- Моделирование данных в Azure Cosmos DB
- Как моделировать и секционировать данные в Azure Cosmos DB на примере реальной задачи
- Partitioning and horizontal scaling in Azure Cosmos DB (Секционирование и горизонтальное масштабирование в Azure Cosmos DB)
- Стратегия секционирования и затраты на подготовленную пропускную способность