Samenvatting
In deze module hebt u belangrijke concepten en technieken geleerd voor het modelleren en partitioneren van gegevens voor NoSQL-databases zoals Azure Cosmos DB. We hebben deze toegepast op onze e-commercetoepassing die we nodig hebben om te migreren van een relationele database naar een NoSQL-database. De dingen die u in deze module hebt geleerd, zijn onder andere:
- Verschillen tussen relationele en NoSQL-databases: u hebt geleerd hoe NoSQL-databases zoals Azure Cosmos DB horizontaal schaalbaar zijn, terwijl relationele databases doorgaans verticaal schaalbaar zijn.
- Het gebruik van toegangspatronen voor modelgegevens: u hebt geleerd hoe u inzicht krijgt in de toegangspatronen van een toepassing voor gegevens een belangrijke rol speelt bij het modelleren en partitioneren van gegevens.
- Insluiten versus verwijzen: u hebt geleerd wanneer u verschillende entiteiten in hetzelfde document moet insluiten versus wanneer u naar de gegevens moet verwijzen en als afzonderlijke rijen moet opslaan.
- Een partitiesleutel kiezen: U hebt belangrijke concepten geleerd voor het kiezen van een partitiesleutel. Deze concepten omvatten het voorkomen van dynamische partities en het verwerken van workloads die zowel lezen als schrijven zwaar zijn.
- Modellering van opzoek- of referentiegegevens: Ten slotte hebt u geleerd hoe u gegevens modelleert die worden gebruikt als zoek- of verwijzingsfunctie voor andere gegevens.
We hebben al deze concepten en technieken toegepast op een relationele database om deze te modelleren voor een NoSQL-database. We hebben de drie klantentiteiten gemodelleerd en in één document ingesloten. Dit heeft geresulteerd in een toename van de prestaties door het aantal aanvragen voor de gegevens te verminderen.
We hebben ook de productcategorie en entiteiten voor producttags gemodelleerd. En we hebben een speciale techniek gebruikt om de totale opslag en doorvoer te verminderen die nodig is voor kleine opzoektabellen.
Nu u deze module hebt voltooid, kunt u het volgende doen:
- Toegangspatronen voor gegevens bepalen.
- Pas strategieën voor gegevensmodel en partitionering toe om een efficiënte en schaalbare NoSQL-database te ondersteunen.
Meer informatie
- Inzicht in de verschillen tussen NoSQL en relationele databases
- Gegevensmodellering in Azure Cosmos DB
- Meer informatie over het modelleren en partitioneren van gegevens in Azure Cosmos DB aan de hand van een praktijkvoorbeeld
- Partitionering en horizontaal schalen in Azure Cosmos DB
- Partitioneringsstrategie en kosten van ingerichte doorvoer