Introductie

Voltooid

Azure Cosmos DB is de volledig beheerde NoSQL-database van Microsoft in Azure. Als NoSQL-database is Azure Cosmos DB zowel horizontaal schaalbaar als niet-relationeel.

Dankzij horizontale schaalbaarheid biedt Azure Cosmos DB ondersteuning voor gegevensgrootten die veel verder gaan dan die van een typische relationele database. Horizontale schaalbaarheid betekent ook dat de database voorspelbare prestaties biedt.

Om dit schaalbaarheidsniveau te bereiken, moeten gebruikers inzicht krijgen in de concepten, technieken die uniek zijn voor NoSQL-databases voor het modelleren en partitioneren van gegevens.

Scenario

Stel u werkt voor een startup die een database ontwerpt voor het beheren van onlinebestellingen. U werkt aan een voorstel voor een efficiënt databaseontwerp met behulp van Cosmos DB Core (SQL) API. U hebt een entiteitsrelatiemodel opgegeven waaruit u kunt beginnen. U wilt de maximale schaalbaarheid, prestaties en efficiëntie bieden en dit bereiken, de gegevens moeten correct worden gemodelleerd.

Het volgende diagram voor entiteitsrelaties (ER-model) bevat de details van de negen entiteiten waarmee u gaat werken. Het relationele model heeft negen entiteiten in hun eigen tabellen.

Diagram that shows the relational model for our example application.

Wat gaan we doen?

In deze module nemen we ons bestaande relationele gegevensmodel en ontwerpen we het opnieuw als een NoSQL-database voor onze e-commercetoepassing. Tijdens dit proces leert u de volgende concepten:

  • Verschillen tussen relationele en NoSQL-databases: u verkent enkele van de verschillen tussen NoSQL-databases en relationele databases en waarom ze op die manier zijn.
  • Met behulp van patronen voor toegang tot toepassingsgegevens om gegevens te modelleren: u leert hoe u begrijpt hoe een toepassing gegevens leest en schrijft, van invloed is op het modelleren van een NoSQL-database.
  • Insluiten versus verwijzen: u leert wanneer u gegevens in hetzelfde document moet insluiten en wanneer u gegevens als afzonderlijk document moet opslaan.
  • Een partitiesleutel kiezen: u leert belangrijke concepten die nodig zijn voor het kiezen van de beste partitiesleutel om dynamische partities te voorkomen en werkbelastingen te optimaliseren die veel lezen of schrijven zijn, of beide.
  • Opzoek- of referentiegegevens modelleren: Ten slotte leert u hoe u gegevens modelleert die worden gebruikt als zoek- of verwijzingsfunctie voor andere gegevens.

Wat is het belangrijkste doel?

Wanneer u deze module en de bijbehorende module hebt voltooid, hebt u de kennis en vaardigheden om gegevens goed te modelleren en partitioneren voor een NoSQL-database die is geïmplementeerd in Azure Cosmos DB, te optimaliseren met behulp van geavanceerde modelleringspatronen voor Azure Cosmos DB.

Als u deze module hebt voltooid, kunt u het volgende:

  • Toegangspatronen voor gegevens bepalen.
  • Pas strategieën voor gegevensmodel en partitionering toe om een efficiënte en schaalbare NoSQL-database te ondersteunen.