1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão...

Post on 07-Apr-2016

216 views 2 download

Transcript of 1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão...

1Database Systems, 8th Edition

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

gestãoOitava Edição

Capítulo 2Modelo 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.

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.

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.

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.

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)

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

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

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.

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?

11Database Systems, 8th Edition

A evolução do 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

13Database Systems, 8th Edition

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

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

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

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

18Database Systems, 8th Edition

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.

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.

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.

22Database Systems, 8th Edition

23Database Systems, 8th Edition

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)

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.

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.

27Database Systems, 8th Edition

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.

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.

30Database Systems, 8th Edition

31Database Systems, 8th Edition

32Database Systems, 8th Edition

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

34Database Systems, 8th Edition

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.

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.

37Database Systems, 8th Edition