0% acharam este documento útil (0 voto)
75 visualizações36 páginas

Aula 3 - Modelagem de Dados

O documento apresenta os principais conceitos de modelagem de dados em bancos de dados não relacionais. Aborda os tipos de modelagem que incluem a caracterização do workload, identificação e modelagem de relacionamentos e aplicação de design patterns. Explica cada etapa do processo de modelagem e conceitos como esquema flexível.

Enviado por

danisismon
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
75 visualizações36 páginas

Aula 3 - Modelagem de Dados

O documento apresenta os principais conceitos de modelagem de dados em bancos de dados não relacionais. Aborda os tipos de modelagem que incluem a caracterização do workload, identificação e modelagem de relacionamentos e aplicação de design patterns. Explica cada etapa do processo de modelagem e conceitos como esquema flexível.

Enviado por

danisismon
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 36

Disciplina:

Banco de Dados Não Relacional


Aula 3 – Modelagem de Dados
Curso: DSM | Desenvolvimento de Software Multiplataforma
Turma: 3o ciclo – 2024 – Terça Feira – Matutino

Professor: Jeferson - Email: jeferson.dias5@fatec.sp.gov.br


2
MODELAGEM DE DADOS

3
MODELAGEM DE DADOS

► O principal desafio na modelagem de dados e equilibrar as


necessidades do aplicativo, as características de
desempenho do mecanismo de banco de dados e os padrões
de recuperação de dados.

4
MODELAGEM DE DADOS

► Ao projetar modelos de dados, considere sempre o uso de


aplicativos dos dados (ou seja, consultas, atualizações e
processamento dos dados) bem como a estrutura inerente
dos dados em si.

5
MODELAGEM DE DADOS

Simplicidade Performance

6
MODELAGEM DE DADOS

► Temos três tipos:


❖ Caracterização do Workload
❖ Identificação e Modelagem dos Relacionamentos
❖ Aplicação de Design Patterns

7
CARACTERIZAÇÃO DO WORKLOAD

8
CARACTERIZAÇÃO DO WORKLOAD

► Levantamento dos dados e a carga do sistema, seu layout,


suas telas e funcionalidades.

9
CARACTERIZAÇÃO DO WORKLOAD

► Levantamento de Requisitos
❖ Usando uma das práticas de levantamento de requisito
conhecida como entrevista, os analistas conversam com o
cliente para entender tudo o que deve ter no sistema.
❖ A realização do levantamento de requisitos é o primeiro
passo para obter um sistema que atenda às necessidades
do cliente. (Engenharia de Software).

10
CARACTERIZAÇÃO DO WORKLOAD

► Analista Funcional / Negócio


❖ Um plano de negócio é um documento que descreve por
escrito os objetivos de um negócio e quais passos devem
ser dados para que esses objetivos sejam alcançados.

11
CARACTERIZAÇÃO DO WORKLOAD

► Informações sobre o Workload de ambientes existentes


❖ Tamanho (carga) do banco de dados
❖ Verificação do ambiente de trabalho
❖ Documentos tem um limite de 16MB

12
CARACTERIZAÇÃO DO WORKLOAD

► Modelo de telas de aplicação


❖ Prototipagem de Software ou aplicativo.

13
CARACTERIZAÇÃO DO WORKLOAD

Levantamento de
Requisito

Analista
Funcional/Negócio
1. Quantificar os dados
2. Qualificar as operações
Informações sobre 3. Quantificar as operações
Esquema de Dados:
Workload de
Ambientes Existentes

Lista de Suposições
Modelo de telas de Lista de Operações no BD
aplicação

14
IDENTIFICAÇÃO E MODELAGEM DOS
RELACIONAMENTOS

15
IDENTIFICAÇÃO E MODELAGEM DOS
RELACIONAMENTOS
► Vamos usar a cardinalidade do banco de dados Relacional,
sendo:
❖ Relacionamento de 1 para 1;
❖ Relacionamento de 1 para N ou de N para 1 quando for o
caso;
❖ Relacionamento de N para N.

16
IDENTIFICAÇÃO E MODELAGEM DOS
RELACIONAMENTOS

17
IDENTIFICAÇÃO E MODELAGEM DOS
RELACIONAMENTOS

18
IDENTIFICAÇÃO E MODELAGEM DOS
RELACIONAMENTOS
► CRD - Collection Relationship Diagram (diagrama de relação
e coleção)

Colection: Veículo (10K) Colection: Preço (1k)

_id: "<string>"
_id: "<string>"
Marca: "<string>"
1 N Mês: "<date>"
Modelo: "<string>“

Valor: "<int32>"
Cores: "<array>" (0, 5, 10)
Desconto: "<int32>"
Cor: "<azul>"
Frete: "<int32>"
Cor: "<branco>"

19
IDENTIFICAÇÃO E MODELAGEM DOS
RELACIONAMENTOS
► Esquema de Dados:
❖ Lista de Suposições
❖ Lista de Operações no BD
❖ Collection Relationship Diagram (CRD)
❖ Tamanho do BD
❖ Lista de índices

20
APLICAÇÃO DE DESIGN PATTERNS

21
APLICAÇÃO DE DESIGN PATTERNS

► Definição: são as soluções generalistas para problemas que


surgem de forma recorrente ao longo do desenvolvimento de
softwares.
► São soluções elegantes, prontas, pensadas, testadas e
aprovadas para situações comuns e que surgem no
cotidiano.

22
APLICAÇÃO DE DESIGN PATTERNS

► Rever todo o processo para verificar se tem como otimizar


para fazer a entrega dos artefatos.
► Usar a cabeça para resolver o problema.

23
MODELAGEM FINAL

24
MODELAGEM FINAL

► Entrega de uma tabela.


► Entrega de um diagrama
► Entrega de um dicionário
► Entrega de telas do sistema
► Entrega de um modelo JSON/BSON, CSV, XML, etc.

25
MODELAGEM FINAL

► O que vamos entregar para o cliente

26
MODELAGEM FINAL

► Entrega de uma tabela. Collection Bytes Documento Tamanho


usuário 1024 352 MB
► Entrega de uma diagrama avaliação 2048 3 GB
chat 240 116 GB

Colection: Veículo (10K) Colection: Preço (1k)

_id: "<string>"
_id: "<string>"
Marca: "<string>" 1 N Mês: "<date>"
Modelo: "<string>“

Cores: "<array>" (0, 5, 10) Valor: "<int32>"


Cor: "<azul>" Desconto: "<int32>"
Cor: "<branco>" Frete: "<int32>"

27
MODELAGEM FINAL

► Dicionário:

id: "<string>" = número gerado automaticamente pelo NoSQL


Marca: "<string>" = Marca da montadora
Modelo: "<string>" = modelo do veículo
Cores: "<array>" = array para as cores dos veículos
Cor: "<azul>" = cor do veículo
Cor: "<branco>" = cor do veículo
Valor: "<int32>" = valor total do veículo, preço em reais
Desconto: "<int32>" = descontos para PCD ou caso especial
Frete: "<int32>" = valor do frete para entrega dos veículos

28
MODELAGEM FINAL

► Entrega de telas do sistema - Prototipagem

29
MODELAGEM FINAL

► Entrega de um modelo JSON/BSON, CSV, XML, etc..


1.{"menu": {
2. "id": "file",
3. "value": "File",
4. "popup": {
5. "menuitem": [
6. {"value": "New", "onclick": "CreateDoc()"},
7. {"value": "Open", "onclick": "OpenDoc()"},
8. {"value": "Save", "onclick": "SaveDoc()"}
9. ]}}}

1.<menu id="file" value="File">


2. <popup>
3. <menuitem value="New" onclick="CreateDoc()" />
4. <menuitem value="Open" onclick="OpenDoc()" />
5. <menuitem value="Save" onclick="SaveDoc()" />
6. </popup>
30 7.</menu>
ESQUEMA FLEXÍVEL

31
ESQUEMA FLEXÍVEL

► Ao contrário dos bancos de dados SQL, onde você deve


determinar e declarar o esquema de uma tabela antes de
inserir dados, o MongoDB's, coleções, por padrão, não
requerem sua Documentos ter o mesmo esquema.

32
ESQUEMA FLEXÍVEL

33
ESQUEMA FLEXÍVEL

Relação no Banco de Dados MongoDB / JSON


Base de Dados Base de Dados
Tabela Coleção
Registro Documento
Coluna Atributo

34
ESQUEMA FLEXÍVEL

Esta Foto de Autor Desconhecido está


licenciado em CC BY-ND

35
Obrigado
Qualquer dúvida entrar em contato via e-mail:

E-mail jeferson.dias5@fatec.sp.gov.br

36

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy