37
1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

Embed Size (px)

Citation preview

Page 1: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

1Database Systems, 8th Edition

Sistemas de Banco de Dados: Projeto, Implementação e

gestãoOitava Edição

Capítulo 2Modelo de Dados

Page 2: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

2Database Systems, 8th Edition

Objetivos

• Sobre modelagem de Dados e a importância dos modelos de dados.

• Quais são as regras de negócios e como influênciam o projeto do banco de dados

• Como os modelos de dados evoluiram• Como os modelos de dados podem ser

classificados quanto ao nível de abstração.

Page 3: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

3Database Systems, 8th Edition

Introdução

• Projetistas, programadores e usuários finais tem visões diferentes do dados.

• As diferentes visões dos mesmos dados levam a projetos que não refletem as operações da empresa.

• Modelagem de dados reduzem a complexidade do projeto de banco de dados.

• Vários graus de abstração dos dados ajudam a reconciliar as visões divergentes do mesmos dados.

Page 4: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

4Database Systems, 8th Edition

Modelagem de Dados e Modelo de Dados

• Modelo de Dados – Representação relativamente simples de

estruturas complexas do mundo real.• Geralmente usam formato gráfico

• Modelo: Uma abstração de um objeto ou evento do mundo real– Útil para compreender a complexidade do

mundo real.• Modelagem de Dados é iterativo e

progressivo.

Page 5: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

5Database Systems, 8th Edition

A importância dos Modelos de Dados

• Facilita integração entre projetista, programador e usuário final.

• Usuários finais tem diferentes visões e necessidades para os dados.

• Modelo de Dados organiza os dados para diversos usuários.

• Modelo de Dados é um abstração.

Page 6: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

6Database Systems, 8th Edition

Elementos básicos do Modelo de Dados

• Entidade: Qualquer coisa sobre o quel será coletado dados e armazenados para uso futuro.

• Atributo: Uma característica da entidade• Relacionamento: descreve associação entre

entidades– Relacionamento um-para-muitos (1:M) – Relacionamento Muitos-para-muitos (M:N ou M:M) – Relacionamento Um-para-um (1:1)

Page 7: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

7Database Systems, 8th Edition

Regras de Negócios

• Descrição de políticas, procedimentos ou princípios dentro de uma empresa– Aplica a qualquer empresa que armazena e

usa dados para gerar informação.• Descreve as operações para criar e garantir

ações dentro do ambiente organizacional.• Deve ser fácil de compreender para todos na

empresa.• Descreve as características dos dados na

visão da empresa

Page 8: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

8Database Systems, 8th Edition

Descobrindo as Regras de Negócios

• Fonte das Regras de Negócios:– Gerente geral– Comite político da empresa– Gerente dos departamentos– Documentação impressa

• Procedures• Padrões• Manuais de operações• Manuais de operações

– Entrevista direta com os usuários finais

Page 9: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

9Database Systems, 8th Edition

Descobrindo as Regras de Negócios

• Padronização da visão dos dados pela empresa

• Forma de comunicação entre projetistas e usuários

• Permite ao projetista compreender a natureza, papel e limites dos dados.

• Permite ao projetista compreender o processo de negócio.

Page 10: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

10Database Systems, 8th Edition

Traduzindo regras de negócios em Componentes do Modelo de Dados.

• Geralmente substantivos viram entidades• Verbos viram relacionamentos entre as

entidades• Relacionamentos são bi-direcionais• Duas perguntas identificam o tipo de

relacionamento:– Quantos elementos de B estão relacionados

com um único elemento de A?– Quantos elementos de A estão relacionaods

com um único elemento de B?

Page 11: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

11Database Systems, 8th Edition

A evolução do Modelo de Dados

Page 12: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

12Database Systems, 8th Edition

Modelo Hierárquico

• Desenvolvido na década de 60 para gerir grande quantidades de dados em projetos de manufatura

• Representada por uma árvore de ponta cabeça– Segmento é análogo ao registro– Conjunto de relacionamentos 1-para-muitos

entre os segentos

Page 13: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

13Database Systems, 8th Edition

Page 14: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

14Database Systems, 8th Edition

O modelo Hierárquico( continuação)

• Base para os modelos atuais• Desvantagens do modelo hierárquico:

– Implementação complexa– Difícil de gerenciar– Falta independência estrutural– Ausência do relacionamento tipo 1:M– Sem padrões de implementação

Page 15: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

15Database Systems, 8th Edition

O Modelo Rede• Desenvolvido para representar relacioanmentos

complexos de dados de modo mais eficaz.– Aumenta desenpenho do banco de dados– Impõe um padrão de banco de dados

• Conference on Data Systems Languages (CODASYL) criou o DBTG

• Database Task Group (DBTG): Ambiente definido para facilitar o desenvolvimento de banco de dados

Page 16: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

16Database Systems, 8th Edition

O modelo Rede (continuação)

• Esquema– Organização conceitual de todo o banco de

dados na visão do administrador.• Sub-esquema

– Visão parcial dos dados pelos programas• Linguagem de gestão de dados (DML)

– Define o ambiente em que os dados são manipulados

Page 17: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

17Database Systems, 8th Edition

O Modelo Rede (continuação)

• Possui similiaridades com o modelo– Registro pode ter mais de um pai

• Coleção de registros usando o tipo de relacionamento 1:M

• Possui dois tipos de registros– Proprietário

• Equivalente aos pais no modelo hierárquico– Membro

• Equivalente aos filhos no modelo hierárquico

Page 18: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

18Database Systems, 8th Edition

Page 19: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

19Database Systems, 8th Edition

O Modelo rede (continuação)

• Desvantagens do modelo Rede– Complexo– Falta de ferramenta de consultas ad hoc – Mudança estrutural no banco de dados pode

gerar problemas em todos os programas.

Page 20: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

20Database Systems, 8th Edition

O modelo Relacional

• Desenolvido por E. F. Codd (IBM) in 1970• Tabela (relações)

– Matriz consiste de linha/coluna.– Cada linha na relação é chamada de tupla.

• Considerados impraticável em 1970.• Modelo conceitualmente simples, mas usa

intensivamente o processamento do computador.

Page 21: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

21Database Systems, 8th Edition

O modelo relacional (continuação)

• SGBDR – Sistema Gerenciador de Banco de Dados Relacional– Realiza as mesmas funções que o modelo

hierárquico– Oculta as complexidade para os usuários

• Diagrama Relacional– Representado por entidade, atributos e

relacionamentos• A Tabela relacional armazena um coleção de

entidades relacionadas.

Page 22: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

22Database Systems, 8th Edition

Page 23: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

23Database Systems, 8th Edition

Page 24: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

24Database Systems, 8th Edition

O modelo relacional (continuação)

• Banco de Dados relacionais baseado em SQLpossuem 3 partes:– Interface do usuário

• Permite ao usuário interagir com os dados.– Conjunto de tabelas armazenadas em um banco de

dados• Cada tabela é independente das demais• Linhas em diferentes tabelas estão relacionadas com

outras tabelas por meio de atributos comuns.– Linguagem de consulta SQL

• Executa todas as consultas ao banco (visões)

Page 25: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

25Database Systems, 8th Edition

O modelo de Entidade e Relacionamento

• Padrão bem aceito para modelagem de dados.• Introduzido por Chen em 1976• Representação gráfica das entidades e seus

relacionamentos em uma estrutura de Banco de Dados.

• O diagram Entidade e Relacionamento (DER)– Usa a representação gráfica dos componentes do

modelo de Banco de Dados.– Entidade é mapeada em uma tabela relacional.

Page 26: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

26Database Systems, 8th Edition

O modelo relacional (continuação)

• Cada instância (ou ocorrência) é uma linha da tabela.

• A entidade é uma coleção de itens similares• Entidades são conectadas pelo

relacionamento• Relacionamento usa notação de Chen

– Losango para os relacionamentos– Nome da relação é escrita dentro do losango.

Page 27: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

27Database Systems, 8th Edition

Page 28: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

28Database Systems, 8th Edition

Modelo Orientado para Objeto (MDOO)

• Os dados e relacionamentos estão inseridos em uma única estrutura chamada objeto.

• MDOO (object-oriented data model) é a base para o SGBDOO– Modelo de dados semânticos

• Objetos contém operações• Objeto é uma abstração de uma entidade

real.

Page 29: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

29Database Systems, 8th Edition

Modelo Orientado para Objeto (OODM)(continuação)

• Atributos descrevem as propriedades de um objeto

• Objetos que tem características similares são agrupados em classes.

• Classes são organizadas em um hierarquia de classes.

Page 30: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

30Database Systems, 8th Edition

Page 31: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

31Database Systems, 8th Edition

Page 32: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

32Database Systems, 8th Edition

Page 33: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

33Database Systems, 8th Edition

O Modelo Conceitual

• Representa a visão global de todo o banco de dados.

• Modelo ER é o mais usado• MER é a representação gráfica do modelo

Page 34: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

34Database Systems, 8th Edition

Page 35: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

35Database Systems, 8th Edition

O modelo conceitual (continuação)

• Permite um entendimento macro do ambiente de dados.

• Independente do software e do hardware– Não depende do SGBD para implementar o

modelo– Não depende do hardware usado na

implementação do modelo– Mudanças no hardware e no software não

eftam o projeto do modelo conceitual.

Page 36: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

36Database Systems, 8th Edition

O Modelo Físico

• Opera no nível mais baixo de abstração– Descreve como os dados são armazenados.

• Requer definição de armazenamento físico e métodos de acesso aos dados.

• Independência: Mudanças no modelo físico não afeta o modelo lógico.

Page 37: 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados

37Database Systems, 8th Edition