Resumo

Concluído

Neste módulo, você aprenderá as principais técnicas e conceitos usados para modelar e particionar dados para bancos de dados NoSQL, como o Azure Cosmos DB. Aplicamos isso ao aplicativo de comércio eletrônico que precisávamos migrar de um banco de dados relacional para um banco de dados NoSQL. O que você aprendeu neste módulo inclui:

  • Diferenças entre bancos de dados relacionais e NoSQL: você aprendeu como os bancos de dados NoSQL, como o Cosmos DB, são horizontalmente escalonáveis, enquanto que os bancos de dados relacionais costumam ser verticalmente escalonáveis.
  • Uso de padrões de acesso para modelar dados: você aprendeu como a compreensão dos padrões de acesso de um aplicativo aos dados desempenha um papel importante em como modelar e particionar os dados.
  • Inserção versus referência: você aprendeu quando inserir entidades diferentes no mesmo documento em contraste a quando referenciar os dados e armazená-los como linhas separadas.
  • Escolha de uma chave de partição:você aprendeu os principais conceitos para escolher uma chave de partição. Esses conceitos incluem como evitar partições frequentes e como lidar com cargas de trabalho pesadas para leitura e gravação.
  • Modelagem de dados de referência ou de pesquisa: por fim, você aprendeu a modelar dados que são usados como pesquisa ou referência para outros dados.

Aplicamos todos esses conceitos e essas técnicas a um banco de dados relacional para modelá-lo para um banco de dados NoSQL. Modelamos as três entidades do cliente e as inserimos em um documento individual. Isso resultou em um aumento no desempenho, reduzindo o número de solicitações para os dados.

Também modelamos as entidades de categoria do produto e marca do produto. E usamos uma técnica especial para reduzir o armazenamento geral e a taxa de transferência necessária para pequenas tabelas de pesquisa.

Agora que concluiu este módulo, você já está apto a:

  • Determinar os padrões de acesso para dados.
  • Aplicar o modelo de dados e as estratégias de particionamento para dar suporte a um banco de dados NoSQL eficiente e escalonável.

Saiba mais