Сводка

Завершено

Из этого модуля мы узнали об основных понятиях и методах, которые используются для моделирования и секционирования данных для баз данных NoSQL, таких как Azure Cosmos DB. Мы применили их к нашему приложению электронной коммерции, которое нам требовалось перевести с реляционной базы данных на базу данных NoSQL. В этом модуле мы узнали, в том числе, о следующем.

  • Различия между реляционными базами данных и БД NoSQL: вы узнали, как базы данных NoSQL, такие как Azure Cosmos DB, являются горизонтально масштабируемыми, тогда как реляционные базы данных обычно масштабируются вертикально.
  • Использование шаблонов доступа для моделирования данных: вы узнали, что понимание закономерности доступа приложения к данным играет важную роль в способах моделирования и секционирования данных.
  • Встраивание и ссылка: вы узнали, когда следует внедрять разные сущности в одном документе, а когда следует ссылаться на данные и сохранять их в виде отдельных строк.
  • Выбор ключа секции: вы узнали основные понятия, касающиеся выбора ключа секции. Сведения о том, как избежать наличия "горячих" разделов и как работать с рабочими нагрузками, в которых данные считываются и записываются слишком интенсивно.
  • Моделирование данных поиска или ссылки: наконец, вы узнали моделирование данных, которые используются в качестве ссылки или поиска для других данных.

Все эти принципы и методики мы применили к нашей реляционной базе данных, чтобы смоделировать ее для базы данных NoSQL. Мы смоделировали три сущности клиентов и внедрили все три в один документ. Это привело к увеличению производительности за счет сокращения количества запросов к данным.

Мы также смоделировали сущности категории продукта и тега продукта. Кроме того, мы воспользовались специальным методом, который сократил требования к свободному месту и пропускной способности для небольших таблиц подстановки.

Теперь, когда работа с этим модулем завершена, вы можете:

  • Определение шаблонов доступа для данных.
  • Применение модели данных и стратегий секционирования для поддержки эффективной и масштабируемой базы данных NoSQL.

Подробнее