Introdução

Concluído

O Azure Cosmos DB é o banco de dados NoSQL totalmente gerenciado da Microsoft no Azure. Como um banco de dados NoSQL, o Azure Cosmos DB é horizontalmente escalável e não relacional.

A escalabilidade horizontal permite que o Azure Cosmos DB ofereça suporte a tamanhos de dados muito além de um banco de dados relacional típico. A escalabilidade horizontal também significa que o banco de dados fornece desempenho previsível.

Para atingir esse nível de escalabilidade, os usuários precisam entender os conceitos, técnicas exclusivas de bancos de dados NoSQL para modelagem e particionamento de dados.

Scenario

Imagine que trabalha para uma startup de venda a retalho que está a criar uma base de dados para gerir as encomendas online. Você está trabalhando em uma proposta para um design de banco de dados eficiente usando a API do núcleo do Cosmos DB (SQL). Você recebeu um modelo de relacionamento de entidade para começar. Você deseja fornecer o máximo de escalabilidade, desempenho e eficiência possíveis e, para isso, os dados precisarão ser modelados corretamente.

O diagrama entidade-relacionamento (modelo ER) a seguir fornece os detalhes das nove entidades com as quais você trabalhará. O modelo relacional tem nove entidades em suas próprias tabelas.

Diagram that shows the relational model for our example application.

O que vamos fazer?

Neste módulo, pegaremos nosso modelo de dados relacionais existente e o redesenharemos como um banco de dados NoSQL para nosso aplicativo de comércio eletrônico. Durante esse processo, você aprenderá os seguintes conceitos:

  • Diferenças entre bancos de dados relacionais versus bancos de dados NoSQL: Você explorará algumas das diferenças entre bancos de dados NoSQL e bancos de dados relacionais e por que eles são assim.
  • Usando padrões de acesso a dados de aplicativos para dados de modelo: você aprenderá como entender a maneira como um aplicativo lê e grava dados influencia como modelá-los para um banco de dados NoSQL.
  • Incorporação versus referência: você aprenderá quando deve incorporar dados no mesmo documento versus quando deve armazenar dados como um documento separado.
  • Escolhendo uma chave de partição: Você aprenderá os principais conceitos necessários para escolher a melhor chave de partição para evitar partições quentes e otimizar cargas de trabalho que são lidas ou gravadas pesadas, ou ambas.
  • Pesquisa de modelagem ou dados de referência: finalmente, você aprenderá a modelar dados que são usados como pesquisa ou referência para outros dados.

Qual é o principal objetivo?

Ao concluir este módulo e o módulo complementar, "Otimizar seu banco de dados usando padrões de modelagem avançados para o Azure Cosmos DB", você terá o conhecimento e as habilidades para modelar e particionar dados corretamente para um banco de dados NoSQL implantado no Azure Cosmos DB.

Depois de concluir este módulo, conseguirá:

  • Determine padrões de acesso para dados.
  • Aplique estratégias de particionamento e modelo de dados para dar suporte a um banco de dados NoSQL eficiente e escalável.