Etapa 1: identificar os casos de uso e o modelo lógico de dados - Recomendações da AWS

Etapa 1: identificar os casos de uso e o modelo lógico de dados

Uma empresa automotiva deseja criar um sistema de gerenciamento de componentes transacional para armazenar e pesquisar todas as peças automotivas disponíveis e criar relacionamentos entre diferentes componentes e peças. Por exemplo, um carro contém várias baterias, cada bateria contém vários módulos de alto nível, cada módulo contém várias células e cada célula contém vários componentes de baixo nível.

Geralmente, para criar um modelo de relacionamento hierárquico, um banco de dados de grafos como o Amazon Neptune é uma escolha melhor. Em alguns casos, no entanto, o Amazon DynamoDB é uma alternativa melhor para modelagem de dados hierárquicos devido à sua flexibilidade, segurança, performance e escalabilidade.

Por exemplo, é possível criar um sistema em que 80 a 90% das consultas sejam transacionais no qual o DynamoDB se encaixe bem. Neste exemplo, os outros 10 a 20% das consultas são relacionais, onde um banco de dados de grafos, como o Neptune, se encaixa melhor. Nesse caso, incluir um banco de dados adicional na arquitetura para atender apenas 10 a 20% das consultas poderia aumentar os custos. Também aumenta a carga operacional de manter vários sistemas e sincronizar dados. Em vez disso, você pode modelar essas consultas relacionais de 10 a 20% no DynamoDB.

Criar o diagrama de uma árvore de exemplo para componentes automotivos pode ajudar a mapear a relação entre eles. O diagrama a seguir mostra um gráfico de dependência com quatro níveis. O CM1 é o componente de nível superior. No caso do exemplo, o próprio carro. Ele tem dois subcomponentes para dois exemplos de baterias, CM2 e CM3. Cada bateria tem dois subcomponentes, que são os módulos. CM2 tem os módulos CM4 e CM5, enquanto CM3 tem os módulos CM6 e CM7. Cada módulo tem vários subcomponentes, que são as células. O módulo CM4 tem duas células, CM8 e CM9. CM5 tem uma célula, CM10. CM6 e CM7 ainda não têm células associadas.

Exemplo de diagrama em árvore mostrando as relações descritas anteriormente.

Este guia usará essa árvore e seus identificadores de componentes como referência. Um componente superior será chamado de pai, enquanto um subcomponente será chamado de filho. Por exemplo, o componente principal CM1 é pai de CM2 e CM3. CM2 é pai de CM4 e CM5. Isso representa graficamente os relacionamentos entre pais e filhos.

Na árvore, é possível ver o gráfico completo de dependências de um componente. Por exemplo, CM8 depende de CM4 que depende de CM2 que depende de CM1. A árvore define o gráfico de dependências completo como o caminho. Um caminho descreve duas coisas:

  • O gráfico de dependências

  • A posição na árvore

Preenchimento dos modelos para requisitos de negócios:

Forneça informações sobre seus usuários:

Usuário

Descrição

Funcionário

Funcionário interno da empresa automotiva que precisa de informações sobre carros e seus componentes

Forneça informações sobre as fontes de dados e como os dados serão ingeridos:

Fonte

Descrição

Usuário

Sistema de gerenciamento

Sistema que armazena todos os dados relacionados a peças automotivas disponíveis e suas relações com outros componentes e peças.

Funcionário

Forneça informações sobre como os dados serão consumidos:

Consumidor

Descrição

Usuário

Sistema de gerenciamento

Recuperar todos os componentes filhos imediatos para um ID de componente pai.

Funcionário

Sistema de gerenciamento

Recuperar uma lista recursiva de todos os componentes filhos para um ID de componente.

Funcionário

Sistema de gerenciamento

Ver os ancestrais de um componente.

Funcionário