Baixe o app para aproveitar ainda mais
Prévia do material em texto
26/02/2020 1 DIAGRAMA ENTIDADE E RELACIONAMENTO - DER UNIDADE II DEFINIÇÃO DE DER É um modelo diagramático que descreve o modelo de dados de um sistema com alto nível de abstração. Ele é a principal representação gráfica do Modelo de Entidades e Relacionamentos. É usado para representar o modelo conceitual do negócio. Diagrama Entidade-Relacionamento (DER) • descreve relacionamentos entre objetos de dados; • conduz à modelagem de dados; • atributos de cada objeto => Descrição de Objetos de Dados; • Quais são os objetos de dados a serem processados pelo sistema? • Qual é a composição de cada objeto de dado e quais atributos descrevem o objeto? • Onde os objetos estão localizados? • Quais são os relacionamentos entre os objetos? • Qual é o relacionamento entre os objetos e os processos que os transformam? Modelagem de Dados 26/02/2020 2 REPRESENTAÇÃO GRÁFICA DER ENTIDADES (Objetos ) FUNCIONÁRIOS ATRIBUIÇÕES (Descrição) FUNCIONÁRIOS matrícula nome RELACIONAMENTO (Forma como iteragem) lotações 5 ENTIDADE É um conjunto de objetos do mundo real sobre os quais se deseja manter informações no banco de dados É distinguível de outros objetos Representada através de um retângulo Pode representar: objetos concretos (uma pessoa) objetos abstratos (um departamento) Departamento Contabilidade Financeiro Jurídico Pessoal Empregado João Pedro Paulo Maria Possui propriedades Atributos e Relacionamentos TIPOS DE ENTIDADES • Entidades fortes: são aquelas cuja existência independe de outras entidades, ou seja, por si só elas já possuem total sentido de existir. Em um sistema de vendas, a entidade produto, por exemplo, independe de quaisquer outras para existir. • Entidades fracas: ao contrário das entidades fortes, as fracas são aquelas que dependem de outras entidades para existirem, pois individualmente elas não fazem sentido. Mantendo o mesmo exemplo, a entidade venda depende da entidade produto, pois uma venda sem itens não tem sentido. • Entidades associativas: esse tipo de entidade surge quando há a necessidade de associar uma entidade a um relacionamento existente. Na modelagem Entidade-Relacionamento não é possível que um relacionamento seja associado a uma entidade, então tornamos esse relacionamento uma entidade associativa, que a partir daí poderá se relacionar com outras entidades. ATRIBUTOS É um dado que é associado a cada ocorrência de uma entidade ou de um relacionamento Exemplos de atributos de entidades: Empregado Nome Endereço Salário Departamento Descrição númeroDeFuncionários 26/02/2020 3 ATRIBUTO CHAVE Tipo de atributo cujos valores são distintos para cada entidade em um conjunto de entidades. ATRIBUTOS SIMPLES • Não possui qualquer característica especial. A maioria dos atributos serão simples. Quando um atributo não é composto, recebe um valor único como nome, por exemplo e não é um atributo chave, então ele será atributo simples. • A maioria dos atributos são considerados simples. ATRIBUTO COMPOSTO • O seu conteúdo é formado por vários itens menores. Exemplo: Endereço. Seu conteúdo poderá ser dividido em vários outros atributos, como: Rua, Número, Complemento, Bairro, Cep e Cidade. Este tipo de atributo é chamado de atributo composto. • É importante considerar que na aplicação do banco de dados um atributo composto geralmente é desmembrado ATRIBUTO MULTIVALORADO • podem assumir diversos valores. Como por exemplo, o atributo Telefone de um funcionário, que pode assumir diversos valores. 26/02/2020 4 RELACIONAMENTOS Como expressamos que João trabalha no Departamento de Contabilidade? Empregado Departamento João Pedro Paulo Maria Contabilidade Financeiro Jurídico Pessoal Diagrama de Ocorrências (instâncias) Lotação RELACIONAMENTOS É uma associação entre entidades Representado através de um losângulo e linhas que ligam as entidades relacionadas nomeDoRelacionamento A B AUTO-RELACIONAMENTO Representa uma associação entre ocorrências de uma mesma entidade Requer a identificação de papéis “um empregado pode ser supervisionado por no máximo 1 empregado. Um empregado pode supervisionar no máximo N empregados.” RELACIONAMENTO BINÁRIO • Relaciona dois conjuntos de entidades distintas 26/02/2020 5 RELACIONAMENTO TERNÁRIO Abstração de uma associação entre três (ocorrências de) entidades Requer a identificação de papéis “um produto em uma cidade pode ser entregue por no máximo 1 distribuidor.” ENTIDADE FRACA • Entidade fraca é uma entidade que não possui existência própria (sua existência depende da existência de outra entidade) ou que para ser identificada depende da identificação de outra entidade. • Não possui chave própria • Identificada por uma entidade forte AGREGAÇÃO • Tipos-entidades agregados são representados como tipos-entidades comuns • Pode englobar – dois tipos-entidades e um tipo-relacionamento • Dados vistos em um nível mais baixo – atributos dos tipos-relacionamentos – chaves primárias dos tipos-entidades AGREGAÇÃO 26/02/2020 6 AGREGAÇÃO ESPECIALIZAÇÃO PARCIAL • nem toda ocorrência da entidade genérica possui uma ocorrência correspondente em uma entidade especializada. ESPECIALIZAÇÃO TOTAL • para toda ocorrência da entidade genérica existe sempre uma ocorrência em uma das entidades especializadas. ESPECIALIZAÇÃO • Uso da Especialização é indicado quando temos atributos específicos para um determinado sub-conjunto de ocorrências dentro de uma Entidade. • Por exemplo, na entidade CLIENTES temos clientes que são empresas e outros clientes são pessoas físicas. Os clientes que são empresas possuem atributos específicos como CNPJ e Inscrição Estadual. • Neste caso podemos promover uma especialização e criar a entidade CLIENTE-EMPRESA que especializa a entidade CLIENTE e que possui atributos específicos de uma empresa. 26/02/2020 7 MODELO ENTIDADE E RELACIONAMENTO - MER • O Modelo Entidade-Relacionamento (modelo relacional) foi definido por Peter Chen em 1976, e teve como base a teoria relacional criada por E.F.Cood (1970). Segundo Chen, a visão de uma dada realidade, baseia-se no relacionamento entre conceitos desta realidade, os quais retratam os fatos que governam esta mesma realidade, e que cada conceito (entidade ou relacionamento) pode possuir atributos (qualificadores desta realidade). MODELO ENTIDADE E RELACIONAMENTO - MER • O objetivo da modelagem de dados é possibilitar a apresentação de uma visão única não redundante e resumida dos dados de um problema. Também nos ajuda a entender a estrutura e o significado destes dados. • No desenvolvimento de aplicações em banco de dados, o Modelo Entidade Relacionamento (E-R) é o mais largamente utilizado para a representação e entendimento dos dados que compõem a essência de um problema. MODELO ENTIDADE E RELACIONAMENTO - MER • Atributos – É uma função que mapeia um conjunto de entidades num domínio e identifica, qualifica e descreve esse conjunto de entidades. Uma entidade é representada por um conjunto de atributos. • Domínio – O domínio é o conjunto de valores possíveis de um atributo. ▫ Conjunto de valores permitidos para um dado • ▫ Exemplos – inteiro, string (domínios básicos) – data, hora (domínios compostos) – [0, 120], (‘M’, ‘F’) (domínios definidos) • Para um domínio existem operações válidas – inteiro (somar, dividir, i1 maior que i2 , ...) – data (extrair dia, extrair mês, d1 anterior a d2 , ...) MODELO ENTIDADE E RELACIONAMENTO - MER Atributo = Coluna 26/02/2020 8 MODELO ENTIDADE E RELACIONAMENTO - MER Valores dos Atributos = Domínio MODELO ENTIDADE E RELACIONAMENTO - MER MODELO ENTIDADE E RELACIONAMENTO- MER • TUPLA Um conjunto de pares (atributo, valor) – define uma ocorrência de um fato do mundo real ou de um relacionamento entre fatos Valor de um atributo – definido no momento da criação de uma tupla – deve ser compatível com o domínio OU NULL (valor inexistente ou indeterminado) atômico (indivisível: não-estruturado e monovalorado) – aluno: {(nome, ‘João’), (idade, 34), (matrícula, 03167034), ...} MODELO ENTIDADE E RELACIONAMENTO - MER Tupla = Linha 26/02/2020 9 MODELO ENTIDADE E RELACIONAMENTO - MER CHAVE PRIMÁRIA (PK) • Uma chave primária (atributo identificador) é uma coluna ou um grupo de colunas que assegura a unicidade das linhas dentro de uma tabela. Uma chave primária que tenha mais de uma coluna é chamada de chave primária composta. Chaves primárias são geralmente indicadas pela sigla PK (primary key). MODELO ENTIDADE E RELACIONAMENTO - MER RELAÇÃO DE CRIAÇÃO DE CHAVE PRIMÁRIA (PK) • Valores de chave primária não podem ser nulos (not null): • Valores de chaves primarias não podem ser nulos porque uma linha sem chave primaria não se distingue de outras linhas da mesma tabela; • Colunas com chaves primarias não podem ter valores duplicados; • Um valor duplicado é um valor exatamente igual a outro de uma ou mais linhas da mesma coluna na mesma tabela; • Se a coluna possui valores duplicados esta não pode servir de identificador da linha; MODELO ENTIDADE E RELACIONAMENTO - MER CHAVE ESTRANGEIRA (FK) • Uma chave estrangeira é uma coluna ou grupo de colunas que pode ou não ser chave primária da tabela em questão, mas, com certeza é chave primária de outra tabela. Uma chave estrangeira formada por mais de uma coluna é chamada de chave estrangeira composta. Chaves estrangeiras são indicadas pela sigla FK (Foreign Key). MODELO ENTIDADE E RELACIONAMENTO - MER CHAVE ARTIGFICIAL OU DELEGADA (SK) – SURROGATE KEY É uma chave artificial e auto incremental. A palavra artificial vem do tipo, porque ela não existe em lugar nenhum, não está lá no transacional como a Natural Key • tem as características de uma Primary Key. • é utilizada para referenciar a dimensão na fato • é auto incremental • é uma chave artificial • é criada no Data Warehouse • não pode se repetir 26/02/2020 10 Normalização A normalização de dados é uma série de passos que se segue no projeto de um banco de dados que permite um armazenamento consistente e um eficiente acesso aos dados em um banco de dados relacional. Esses passos reduzem a redundância de dados e as chances dos dados se tornarem inconsistentes. Os objetivos da normalização: • Minimização de redundâncias e inconsistências; • Facilidade de manipulações do banco de dados; • Ganho de performance no SGBD; • Facilidade de manutenção do sistema de Informação; Formas Normais O Processo de normalização aplica uma série de regras sobre as tabelas de um banco de dados, para verificar se estas estão corretamente projetadas. Embora existam cinco formas normais (ou regras de normalização), na prática usamos um conjunto de três Formas Normais. Primeira Forma Normal Uma relação R está na 1FN se todos os domínios básicos contiverem somente valores atômicos (não possuem grupos repetitivos). • CADA LINHA DE TABELA DEVE REPRESENTAR UM REGISTRO • CADA CÉLULA DE TABELA DEVE CONTER UM ÚNICO VALOR • A chave primária da nova entidade será obtida pela concatenação da chave primária da entidade inicial e a do grupo repetitivo. 26/02/2020 11 Procedimentos • Identificar a chave primária da entidade. • Identificar o grupo repetitivo e removê-lo da entidade. • Criar uma nova entidade com a chave primária da entidade anterior e o grupo repetitivo. Exemplo (NumeroPedido; DataPedido; CodigoCliente; NomeCliente; EnderecoCliente; (CodigoProduto; NomeProduto; QuantidadeProduto; PrecoProduto; TotalProduto); TotalPedido) PEDIDO: (NumeroPedido; DataPedido; CodigoCliente; NomeCliente; EnderecoCliente; TotalPedido) ITEM_PEDIDO: (NumeroPedido; CodigoProduto; NomeProduto; QuantidadeProduto; PrecoProduto; TotalProduto) Exemplo Normalizado 1 FN Segunda Forma Normal • Uma relação R está na 2FN se e somente se ela estiver na primeira e todos os atributos não chave forem totalmente dependentes da chave primária composta (dependente de toda a chave e não apenas de parte dela). 26/02/2020 12 Procedimentos: • Identificar os atributos que não são funcionalmente dependentes de toda a chave primária. • Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles. • Obrigatoriamente estar no 1FN • Atributos não chaves da tabela devem depender de alguma das chaves da tabela • Identificar os atributos que não são funcionalmente dependentes de toda a chave primária; • Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles. • Na 2FN, verifique se a Tabela esta na 1FN e considere todos os Atributos Identificadores como se fossem uma Chave Composta. Teste cada Atributo com os Atributos da Chave Composta verificando se o Atributo precisa do Atributo Identificador analisado para existir. Segunda Forma Normal Terceira Forma Normal Uma relação R está na 3FN se estiver na 2FN e todos os atributos não chave forem dependentes não transitivos da chave primária (cada atributo for funcionalmente dependente apenas dos atributos componentes da chave primária ou se todos os seus atributos não chave forem independentes entre si). Na terceira forma normal temos de eliminar aqueles campos que podem ser obtidos pela equação de outros campos da mesma tabela. Procedimentos: • Identificar todos os atributos que são funcionalmente dependentes de outros atributos não chave. • Removê-los e criar uma nova entidade com os mesmos. • A chave primária da nova entidade será o atributo do qual os atributos removidos são funcionalmente dependentes. Procedimentos:
Compartilhar