Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição
-
Upload
jacqueline-bowers -
Category
Documents
-
view
25 -
download
0
description
Transcript of Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Ediçã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
• 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.• A Modelagem de Dados é iterativa e
progressiva.
5Database Systems, 8th Edition
6
SGBD e Modelo de Dados
Database Systems, 8th Edition
7Database 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.
8Database Systems, 8th Edition
Elementos básicos do Modelo de Dados
• Entidade: Qualquer coisa sobre o qual será coletado dados e que serão 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)
9Database 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
10Database 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
11Database 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.
12Database 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?
13Database Systems, 8th Edition
A evolução do Modelo de Dados
14Database Systems, 8th Edition
15Database 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
16Database Systems, 8th Edition
17Database 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
18Database 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
19Database 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
20Database 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
21Database Systems, 8th Edition
22Database 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.
23Database Systems, 8th Edition
O modelo Relacional
• Desenvolvido 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.
24Database Systems, 8th Edition
O modelo relacional (continuação)
• SGBDR – Sistema Gerenciador de Banco de Dados Relacional– Realiza as mesmas funções que o modelo
hierarquico– 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.
25Database Systems, 8th Edition
26Database Systems, 8th Edition
27Database 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)
28Database 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.
29Database 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
– Diamante para os relacionamentos– Nome da relação é escrita dentro do
diamante.
30Database Systems, 8th Edition
31Database Systems, 8th Edition
Modelo Orientado para Objeto (OODM)
• 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.
32Database 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.
33Database Systems, 8th Edition
34Database Systems, 8th Edition
35
Comparando
Database Systems, 8th Edition
Eficiência Flexibilidade AmigávelComplexidade / Programas
Hierárquico Alto Baixa Baixa Alto
Rede Média Baixa/Média Baixa/Média Alto
RelacionalBaixa, mas crescente
Alta Alta Baixo
36Database Systems, 8th Edition
37
Comparando modelos
Database Systems, 8th Edition