Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados Database Systems, 8th Edition 1 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. Database Systems, 8th Edition 2 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. Database Systems, 8th Edition 3 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. Database Systems, 8th Edition 4 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. Database Systems, 8th Edition 5 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) Database Systems, 8th Edition 6 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 Database Systems, 8th Edition 7 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 Database Systems, 8th Edition 8 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. Database Systems, 8th Edition 9 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? Database Systems, 8th Edition 10 A evolução do Modelo de Dados Database Systems, 8th Edition 11 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 Database Systems, 8th Edition 12 Database Systems, 8th Edition 13 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 Database Systems, 8th Edition 14 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 Database Systems, 8th Edition 15 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 Database Systems, 8th Edition 16 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 Database Systems, 8th Edition 17 Database Systems, 8th Edition 18 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. Database Systems, 8th Edition 19 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. Database Systems, 8th Edition 20 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. Database Systems, 8th Edition 21 Database Systems, 8th Edition 22 Database Systems, 8th Edition 23 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) Database Systems, 8th Edition 24 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. Database Systems, 8th Edition 25 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. Database Systems, 8th Edition 26 Database Systems, 8th Edition 27 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. Database Systems, 8th Edition 28 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. Database Systems, 8th Edition 29 Database Systems, 8th Edition 30 Database Systems, 8th Edition 31 Database Systems, 8th Edition 32 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 Database Systems, 8th Edition 33 Database Systems, 8th Edition 34 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. Database Systems, 8th Edition 35 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. Database Systems, 8th Edition 36 Database Systems, 8th Edition 37