Baixe o app para aproveitar ainda mais
Prévia do material em texto
ARA0040 – BANCO DE DADOS PROFESSOR: RAIMUNDO AGUIAR XAVIER 1 Aula 02 - CONTEÚDO 2 ➢Conceitos de MODELOS DE DADOS ➢TIPOS DE MODELOS DE DADOS Modelos de Dados Conceitos – Modelagem de Dados Modelar significa criar um modelo que explique as características de funcionamento e comportamento de um software a partir do qual ele será criado, facilitando seu entendimento e seu projeto, através das características principais que evitarão erros de programação, projeto e funcionamento. É uma parte importante do desenho de um sistema de informação. Os modelos de dados são ferramentas que permitem demonstrar como serão construídas as estruturas de dados que darão suporte aos processos de negócio, como esses dados estarão organizados e quais os relacionamentos que pretendemos estabelecer entre eles.[1] A abordagem possui três perspectivas: Modelagem Conceitual: é usada como representação de alto nível e considera exclusivamente o ponto de vista do usuário criador dos dados; Demonstra todas as relações entre as entidades, suas especializações, seus atributos e auto-relações. Modelagem Lógica: Mostra as ligações entre as tabelas de banco de dados, as chaves primárias, os componentes de cada uma, etc. Modelagem Física: demonstra como os dados são fisicamente armazenados. https://pt.wikipedia.org/wiki/Modelagem_de_dados https://pt.wikipedia.org/wiki/Software https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_de_computadores https://pt.wikipedia.org/wiki/Sistema_de_informa%C3%A7%C3%A3o https://pt.wikipedia.org/wiki/Modelagem_de_dados#cite_note-1 https://pt.wikipedia.org/wiki/Modelagem_de_dados Modelos de Dados Conceitos – Modelo Conceitual Modelagem Conceitual trata da descrição da semântica de aplicativos de software em um alto nível de abstração. Especificamente, modeladores conceituais descrevem modelos de estrutura em termos de entidades, relacionamentos e restrições[1]; descrevem modelos comportamentais ou funcionais em termos de estados, transições entre estados e ações executadas em estados e transições[2]; e descrevem interações e interfaces de usuário em termos de mensagens enviadas e recebidas e informações trocadas[3]. Alguns modelos são objetos físicos; por exemplo, um modelo de um brinquedo que pode ser montado e pode ser feito para funcionar como o objeto que representa. O termo modelo conceitual também pode ser usado para se referir a modelos que são formados após um processo de conceituação ou generalização[4]. https://pt.wikipedia.org/wiki/Modelagem_conceitual https://pt.wikipedia.org/wiki/Sem%C3%A2ntica https://pt.wikipedia.org/wiki/Software_aplicativo https://pt.wikipedia.org/wiki/Modelagem_conceitual#cite_note-1 https://pt.wikipedia.org/wiki/Modelagem_conceitual#cite_note-2 https://pt.wikipedia.org/wiki/Modelagem_conceitual#cite_note-3 https://pt.wikipedia.org/wiki/Modelagem_conceitual#cite_note-MWCD-4 https://pt.wikipedia.org/wiki/Modelagem_conceitual Modelos de Dados Modelo Conceitual - Exemplo Modelos de Dados Conceitos – Modelo Lógico É uma descrição de banco de dados de forma independente de implementação num sistema de gerenciamento. Registra QUE dados podem aparecer no banco, mas não registra COMO estes dados estão armazenados no SGBD. Modelagem Lógica é necessária para compilar os requisitos de negócio e representar os requisitos como um modelo. Está principalmente associada à coleta de necessidades de negócios, e não ao design do banco de dados. As informações que precisam ser coletadas são sobre unidades organizacionais, entidades de negócios e processos de negócios. Descreve como os dados serão armazenados no banco e também seus relacionamentos. Pode ser: relacional, orientado a objetos, orientado a colunas, entre outros. https://pt.wikipedia.org/wiki/Modelagem_de_dados https://pt.wikipedia.org/wiki/Modelagem_de_dados Modelos de Dados Modelo Lógico - Exemplo Modelos de Dados Conceitos – Modelo Físico Inclui a análise das características e recursos necessários para armazenamento e manipulação das estruturas de dados (estrutura de armazenamento, endereçamento, acesso e alocação física), sendo uma sequência de comandos executados em SQL a fim de criar as tabelas, estruturas e ligações projetadas até então e finalmente criar o banco de dados. https://pt.wikipedia.org/wiki/Modelagem_de_dados https://pt.wikipedia.org/wiki/SQL https://pt.wikipedia.org/wiki/Modelagem_de_dados Modelos de Dados Modelo Físico- Exemplo -- Database: Livraria DROP DATABASE Livraria; CREATE DATABASE Livraria WITH OWNER = postgres ENCODING = 'UTF8' LC_COLLATE = 'Portuguese_Brazil.1252' LC_CTYPE = 'Portuguese_Brazil.1252' TABLESPACE = pg_default CONNECTION LIMIT = -1; USE Livraria; CREATE TABLE usuarios ( cod_usuario numeric ( 6 ) NOT NULL, nome char ( 100 ) NOT NULL, cpf CHAR ( 11 ) NOT NULL, email char ( 40 ) NOT NULL, username char ( 20 ) NOT NULL, password char ( 20 ) NOT NULL, CONSTRAINT PK_USUARIOS PRIMARY KEY (cod_usuario), CONSTRAINT AK_USU_CPF UNIQUE (cpf), CONSTRAINT AK_USU_USERNAME UNIQUE (username) ) ; -- TABLESPACE TSP_CURSOSQL; 1. Definição do MER (Modelo Entidade-Relacionamento) Entidade-Relacionamento - DER ou O MER (também conhecido como Diagrama Entidade Relacionamento e Atributo - ERA) foi criado por Peter Chen em 1976 e é baseado na percepção de um mundo real. Qualifica todo item de informação como Entidade, Relacionamento ou Atributo, facilitando assim o entendimento tanto por parte do projetista do banco quanto do usuário. 10 2. Os tipos de diagramas: Dois são os tipos dos diagramas: o básico e o estendido. O primeiro, BÁSICO, é usado pela maioria das ferramentas CASE. Neste há a descrição das entidades, relacionamentos e atributos do sistema, sendo a semântica definida no dicionário de dados. Construtores especializados como: entidades-fracas ou notação de existência também utilizadas mandatória ou opcional são por este modelo. 11 Exemplo de um modelo básico: Cliente Vídeo aluga M N IdCliente NomeCliente Data IdVídeo NrCópia Título 12 O modelo estendido: O nível mais complexo do modelo é direcionado para o programador da aplicação de banco de dados, onde certas restrições descritas no modelo são diretamente relacionadas com o código. Será estudado em uma segunda apresentação. 13 3. Resumo das fases do projeto de um banco de dados 1.Modelagem conceitual – procura capturar formalmente os requisitos de informação de um BD; 2.projeto lógico – objetiva definir as estruturas de dados que implementem os requisitos identificados na modelagem conceitual 3.projeto físico – define parâmetros físicos de acesso ao BD, procurando otimizar a performance do sistema como um todo. 14 Requisitos de Dados Projeto Conceitual Projeto Lógico Projeto Físico Esquema Conceitual Esquema Físico Esquema Lógico Coleta e Análise de Requisitos Mini-Mundo Independente de SGBD Específico para um SGBD Foco: dados 15 O ciclo de vida de um banco de dados (6 fases): 1. Análise dos requerimentos; 2.Projeto conceitual ou lógico do banco de dados: 1. Modelagem ER; 2. Integração das visões; 16 2.3. Transformação do MER para as tabelas SQL; 2.4. Normalização das tabelas; 3. Refinamento de uso; 4. Distribuição dos dados (opcional); 5.Definição do esquema local e projeto físico; 6. Implementação do banco de dados, monitoramento e modificações; 17 4.1 - Análise dos requerimentos Objetivo: identificar o mundo real em suficientes detalhes para possibilitar a construção do BD. Verifica: • os requerimentos naturais dos dados (armazenados no BD); o os objetivos da organização; o os objetivos do sistema de informação; o a estrutura da empresa; 18 o a política organizacional e operacional da empresa; o elementos de dados, relacionamentos, restrições e ambiente de trabalho. • Exigências de processamento: o aplicações existentes; o percepção de novas aplicações; • Plataforma de hardware e software; • Regras de performancee integridade; • Efetivar entrevistas em diferentes níveis. 19 Regras (de Negócio) ◼ Sistemas de informação resolvem uma necessidade funcional do negócio de uma organização. ◼ Organizações possuem regras para conduzir seus negócios. ◼ Regras de negócio podem variar desde simples restrições de domínios de valores a complexas políticas organizacionais. 20 Exemplos de Regras de Negócio ◼ ◼ ◼ Simples: –O salário mínimo é R$160,00. Média – Nenhum funcionário pode ter salário maior do que o do presidente da empresa. Complexa – Nenhum funcionário pode ter salário maior do que o do seu chefe 21 4.2 - Projeto conceitual ou lógico do BD 4.2.1 - Modelagem ER (componentes): Definição: É um modelo abstrato de banco de dados segundo a visão da empresa. Ele descreve como serão agrupados os elementos de dados no banco, identificando os relacionamentos entre estes elementos para atender aos requisitos da informação. 22 Como é realizado: O processo identifica redundantes e os grupos de também elementos elementos de dados repetidos para aplicações específicos. Os elementos repetidos são organizados e refinados até que surja uma visão lógica completa dos relacionamentos entre todos os elementos de dados de um banco de dados. 23 Entidade É uma classe do mundo real com características e propriedades comuns armazenar informações. sobre a qual desejamos É representado por um retângulo e faz uma analogia a umregistro. Exemplos: pessoas, lugares, coisas ou eventos. Representação: Cliente 24 Entidade Fraca • É uma entidade que não possui vida própria. Sua existência depende da existência de uma entidade principal; • Para formarmos a chave primária de uma entidade fraca, utilizamos a chave primária da entidade forte da qual ela é existencialmente dependente, mais um conjunto mínimo de atributos que possa identificar esta entidade. 25 Exemplo: e DependentesFuncionários (Entidade Principal) (Entidade Fraca). Representação: Dependente 26 Relacionamento Representa uma associação que ocorre no mundo real entre duas ou mais entidades. Exemplo: Aluno cursa Disciplina Aluno(Entidade) e Disciplina(Entidade). Representação: cursa 27 Podem ser estudadas sobre 3 aspectos: I. Grau: Recursivo binário - Binário – Funcionário é casado com 1 1 Departamento Divisãoé sub- unidade de 1N 28 Ternário – Observação: este tipo de relacionamento deve sempre que possível ser evitado, já que em muitos casos pode ser decomposto em 2 ou 3 relacionamentos binários. Nem sempre é possível. Escritório Projeto Funcionário usa NM L 29 II. Conectividade: Departamento gerencia Funcionário1 1 Departamento possui Funcionário 1 N um-para-um um-para-muitos 30 Funcionário trabalha em Projetos M N Departamento gerencia Funcionário 1 1 muitos-para-muitos Data-de-início III. Existência: opcional 31 Escritório pertence Funcionário 1 N Departamento possui Funcionário 1 N mandatório desconhecido 32 Atributo São os elementos de dados que conferem identificação e qualificação aos objetos (Entidades e Relacionamentos). Exemplo: Aluno (Matrícula, Nome, Endereço) Cursa (Data) 33 Representação e tipos de atributos: Chave ou Atributo Determinante: É o atributo que garante a unicidade de cada ocorrência de uma Entidade. Ex: Aluno (Matrícula) Veículo (Placa) IdCliente 34 Tipos de chaves: • Chave Primária: conjunto de um ou mais atributos (superchave) que permite identificar unicamente uma entidade no conjunto de entidades. • Chave Candidata: atributo alternativo que também deve identificar unicamente uma entidade no conjunto de entidades. • Chave Estrangeira: atributo de uma entidade que é chave primária da entidade com a qual possui relacionamento. 35 Tipos de atributos: Descritor ou Atributo Simples: guarda em sium valor indivisível. Ex: Nome, Preço, Marca Descritor multivalorado: é aquele que possui várias ocorrências. Ex: Telefone NomeCliente Grau 36 Atributo complexo ou Composto: é aquele que é um conjunto de atributos. Endereço Ex: Endereço (Rua + Número + Bairro + CEP + Cidade) rua cidade estado 37 Domínio de Atributo Exemplo: Sexo : Nome: Salario: (F ou M) Char(30) Inteiro > 5.000 Todo atributo é baseado em um único domínio. Podem existir domínios que aceitem valores nulos (desconhecidos ou não aplicáveis). Exemplo: Número Apto: Inteiro ou nulo ( não aplicável se mora em casa). 38 Cardinalidade Expressa o número mínimo e máximo de vezes em que duas Entidades de relacionam. Tipos de Cardinalidade (0,1) no mínimo 0 e no máximo1 ocorrência, indicando que o relacionamento é opcional e, se existir, associará uma única vez as entidades envolvidas. 39 (1,1) no mínimo 1 e no máximo 1 ocorrência, indicando que o relacionamento é obrigatório e sempre existirá entre as Entidades envolvidas. (0,N) no mínimo 0 e no máximo N ocorrências, indicando que o relacionamento é opcional e, se existir, associará várias vezes as Entidades envolvidas. (1,N) no mínimo 1 e no máximo N ocorrências, indicando que o relacionamento é obrigatório e sempre existirá entre as Entidades envolvidas. 40 4. Notações: Notação Chen Departamento EmpregadoÉ ger. Divisão Departamentotem Escritório EmpregadoÉ ocup. 1 1 1 1 N N 41 Empregado ProjetoTrab. em M N Dependente Entidade fraca Empregado lidera N1Auto- relacionamento 42 Notação Pé-de-galinha Departamento É gerenciado Empregado por Divisão tem Departamento Escritório É ocupado Empregado por 43 Empregado Projeto Trabalha em Dependente Entidade fraca Empregado N1 Auto- relacionamento 44 5. Regras •1:1 o as duas entidades são mandatárias; o um entidade é mandatária e outra opcional; o as duas entidades são opcionais. •1:N – a chave da entidade mandatária e inserida na outra entidade; •M:N - uma tabela de associação é criada com as chaves das outras entidades; 45 46 Modelos de Dados Ferramentas CASE brModelo 3.3 - http://www.sis4.com/brmodelo/ Erwin - https://erwin.com/products/erwin-data-modeler/ Power designer - https://sybase-powerdesigner.informer.com/download/?lang=pt https://www.mysql.com/products/workbench/ http://www.sis4.com/brmodelo/ https://erwin.com/products/erwin-data-modeler/ https://sybase-powerdesigner.informer.com/download/?lang=pt https://www.mysql.com/products/workbench/
Compartilhar