Introduzione

Completato

Azure Cosmos DB è il database NoSQL completamente gestito di Microsoft in Azure. Poiché è un database NoSQL, Azure Cosmos DB è sia scalabile orizzontalmente che non relazionale.

La scalabilità orizzontale consente ad Azure Cosmos DB di supportare dimensioni dati ben oltre quelle di un tipico database relazionale. La scalabilità orizzontale consente anche al database di fornire prestazioni prevedibili.

Per ottenere questo livello di scalabilità, gli utenti devono conoscere i concetti e le tecniche specifiche dei database NoSQL per la modellazione e il partizionamento dei dati.

Scenario

Si supponga di lavorare per una startup di vendite al dettaglio che sta progettando un database per gestire gli ordini online. Si sta lavorando a una proposta per la progettazione di un database efficiente usando l'API Core (SQL) di Cosmos DB. È stato fornito un modello di relazione tra entità da cui iniziare. Si vogliono garantire livelli ottimali di scalabilità, prestazioni ed efficienza e, per ottenere questo risultato, i dati dovranno essere modellati correttamente.

Il diagramma delle relazioni tra entità (modello ER) seguente fornisce i dettagli delle nove entità che verranno usate. Il modello relazionale ha nove entità nelle proprie tabelle.

Diagram that shows the relational model for our example application.

Cosa si fa?

In questo modulo il modello di dati relazionale esistente verrà riprogettato come database NoSQL per l'applicazione di e-commerce. Durante questo processo si apprenderanno i concetti seguenti:

  • Differenze tra database relazionali e database NoSQL: verranno esaminate alcune delle differenze tra i database NoSQL e i database relazionali e le relative caratteristiche.
  • Uso dei criteri di accesso ai dati dell'applicazione per modellare i dati: si apprenderà come la comprensione del modo in cui un'applicazione legge e scrive i dati può influire sulla modellazione dei dati per un database NoSQL.
  • Incorporamento e riferimento: si apprenderà la differenza tra incorporare i dati all'interno dello stesso documento e archiviare i dati come documento separato.
  • Scelta di una chiave di partizione: si apprenderanno i concetti chiave necessari per scegliere la chiave di partizione migliore per evitare partizioni ad accesso frequente e ottimizzare i carichi di lavoro con un numero elevato di operazioni di lettura o scrittura o entrambe.
  • Modellazione di dati di ricerca o di riferimento: si apprenderà infine come modellare i dati usati come ricerca o riferimento per altri dati.

Qual è l'obiettivo principale?

Al termine di questo modulo e del modulo complementare, relativo all'ottimizzazione del database con i criteri di modellazione avanzati per Azure Cosmos DB, si avranno le conoscenze e le competenze necessarie per modellare e partizionare correttamente i dati per un database NoSQL distribuito in Azure Cosmos DB.

Al termine di questo modulo si sarà in grado di:

  • Determinare i criteri di accesso per i dati.
  • Applicare il modello di dati e le strategie di partizionamento per supportare un database NoSQL efficiente e scalabile.