Unidade II ADMINISTRAÇÃO DE BANCO DE DADOS

Documentos relacionados
ADMINISTRAÇÃO DE BANCOS DE DADOS MÓDULO 8

ADMINISTRAÇÃO DE BANCOS DE DADOS MÓDULO 9

Análise e Projeto de Sistemas I

Unidade II ADMINISTRAÇÃO DE. Prof. Luiz Fernando de Lima Santos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1.

MATA60 BANCO DE DADOS Aula 3- Modelo de Entidades e Relacionamentos. Prof. Daniela Barreiro Claro

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

Aula 3 - Modelo Entidade-Relacionamento

Modelagem de dados usando o modelo Entidade- Relacionamento (ER)

Modelos. Banco de dados. Professor: Jarbas Araújo CENTRO EDUCACIONAL RADIER.

Unidade 4 Projeto de Banco de Dados

Revisando Banco de Dados. Modelo Relacional

Modelo Relacional. Aula 02

Ciclo de Desenvolvimento de BD

Modelagem de dados usando MER. Andre Noel

Aula 01 Conceito de Banco de Dados e SGBD

BANCO DE DADOS. Bacharelado em Sistemas de Informação MODELAGEM DE DADOS. Profº Luciano Roberto Rocha. Itararé, 2º período

MODELAGEM DE DADOS PARTE 2

Modelagem Conceitual e o Modelo Entidade-Relacionamento

Banco de Dados. André Luís Duarte Capítulo 2. exatasfepi.com.br

18/03/2012. Independência de Dados: capacidade de modificar a definição dos esquemas em. determinado nível, sem afetar o esquema do nível superior;

01 - Quais as principais vantagens da utilização de um Sistema de Banco de Dados em relação aos sistemas tradicionais de gerenciamento de arquivos?

Banco de Dados Modelagem de Dados

Bancos de Dados Aula #2 - Modelos Conceituais de Dados

Unidade 3 23/10/2008. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores

Banco de Dados 08/08/2010

Conceitos relativos a Banco de Dados & Modelos de Informação de Banco de Dados. Introdução

Computação Instrumental

Banco de Dados Modelagem de Dados. Prof. Joel da Silva

Arquitetura dos SBDs Características e Benefícios Visão Geral de Projeto de BD MER: Entidades e Atributos Atividade.

Sistema de Banco de Dados. UNIDADE 1 Introdução aos Sistemas de Bancos de Dados Professor: Armando Hage

Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 1) Clodis Boscarioli

Curso: Banco de Dados I. Conceitos Iniciais

Modelo ER. Ricardo Terra rterrabh [at] gmail.com

SUMÁRIO. Introdução Modelo de Dados Esquema Geral de Modelagem de BD; ME-R: Conceitos gerais; DE-R Representação e exemplos.

Modelo Entidade Relacionamento (MER) e Diagrama Entidade-Relacionamento (DER)

BANCO DE DADOS. Engenharia da Computação Univasf. Modelo Entidade-Relacionamento. Aula 2. Conjuntos de Entidades - Representação Exemplo:

UNIP Ciência da Computação AES Análise Essencial de Sistemas MER (Modelo Entidade Relacionamento)

Banco de Dados. Introdução e Definições

Banco de Dados I Curso: Sistemas de Informação

Unidade 2 Modelo Conceitual

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1/64

Banco de Dados. Aula 4 - Prof. Bruno Moreno 02/09/2011

Professor Eros Moura, DSc

Modelagem semântica permite aproximar o modelo obtido do mundo real Exemplo de modelos:

Modelagem de Sistemas Web. Modelagem de BD

Tecnologia da Informação

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS BANCO DE DADOS I PROFA. CLEIANE GONÇALVES OLIVEIRA

MODELAGEM DE DADOS. Projeto de Banco de Dados Modelo Conceitual. Prof. Rosemary Melo

Modelagem Conceitual parte I

Modelagem Conceitual parte I

LINGUAGEM, TIPOS DE USUÁRIOS DE SGBD E MODELOS DE DADOS

ORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados

Disciplina: Banco de Dados I Professora: Ms. Márcia Jani. Trabalho de BD1

Modelo Entidade- Relacionamento

Faculdade Ieducare. 5º Semestre Sistemas de Informação. Professor: Rhyan Ximenes. Banco de Dados II 1. Banco de Dados II

conteúdos. bases de dados, SGBD e aplicações. conceitos. modelo relacional (DER) conceitos

MER Modelo de entidade e Relacionamento. Prof. Me. Hélio Esperidião

MODELAGEM DE DADOS UNIDADE 2 Projeto de Banco de Dados. Luiz Leão

Modelo Lógico de Dados. Modelo Relacional

Introdução a Banco de Dados Prof. Msc Denival A. dos Santos

Ciclo de Desenvolvimento de Sistemas de BD

Modelo Entidade- Relacionamento. Hugo Barros

Banco de Dados. Aula 3 - Prof. Bruno Moreno 26/08/2011

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE BANCO DE DADOS MODELO ENTIDADE- RELACIONAMENTO

Banco de Dados Mapeamento Entidade Relacionamento para Relacional

Modelagem de Dados MODELAGEM DE DADOS. Projeto de Banco de Dados Modelo Conceitual. Profa. Rosemary Melo

Modelagem de Dados Usando o Modelo Entidade-Relacionamento (ME-R)

LÉO MATOS INFORMÁTICA

Projeto Banco de Dados

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS CONCEITOS BÁSICOS

Banco de Dados I Parte II a: Abordagem Entidade-Relacionamento

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS O MODELO RELACIONAL

Capítulo 2 Modelo Entidade- Relacionamento. Prof. Mario Dantas

Apostila de Modelagem de Banco de Dados

Unidade 1 Introdução

P R O J E T O: C A R N A V A L. 2. Informações Básicas sobre o Sistema a ser Desenvolvido

Prof. Fabiano Taguchi

PCS3413 Engenharia de Software e Banco de Dados

Banco de Dados Modelagem e Normalização

BCD29008 Banco de dados

Análise Estruturada. Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D.

Engenharia de Software

BANCO DE DADOS. Introdução. Prof. Marcelo Machado Cunha

BCD29008 Banco de dados

Banco de Dados Relacionais. Eduardo Ribeiro Felipe

Banco de Dados - Conceitos. Baseado no material da Profa. Vania Bogorny (UFSC)

Normalização de dados

Modelo Relacional Prof. Msc Denival A. dos Santos

UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ CIÊNCIA DA COMPUTAÇÃO PROJETO DE BANCO DE DADOS RELACIONAL. Profº Erinaldo Sanches Nascimento

Modelagem de Dados MODELAGEM DE DADOS. Projeto de Banco de Dados Modelo Conceitual. Profa. Rosemary Melo

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

BANCO DE DADOS I Atualizado em 13 de maio de 2009

Bancos de Dados. 7. Mapeamento ER/ERE para Relacional

Transcrição:

Unidade II 3 MODELAGEM DE DADOS Silberschatz nos dá uma definição do que vem a ser modelagem de dados (SILBERSCHATZ, et. tal, 1999:): Apoiando a estrutura de um banco de dados está o modelo de dados: uma coleção de ferramentas conceituais para descrever dados, relações de dados, semântica de dados e restrições de consistência. Um modelo de dados oferece uma maneira de descrever o projeto de um banco de dados no nível físico e lógico. 3.1 Tipos de modelos de dados 3.1.1 Modelo conceitual 1 O modelo conceitual não considera a estrutura do banco de dados para o seu desenvolvimento, mas a forma como as estruturas são criadas tendo em vista o armazenamento dos dados. Representado através do diagrama entidaderelacionamento, traduz naturalmente os fatos, portanto é a fase de maior proximidade com o cliente, pois também ocorre o levantamento de dados que dá a sustentação da base de todo o projeto. 3.1.2 Modelo lógico O modelo lógico tem como objetivo a implementação de recursos que definem padrões e nomenclaturas, e, também, como estabelecer chaves primárias e estrangeiras. 11

Unidade II A estruturação do modelo lógico se norteia completamente no modelo conceitual que foi desenvolvido anteriormente. É o modelo mais usado, a grande maioria dos sistemas de banco de dados atuais se baseia neste modelo. 3.1.3 Modelo físico A modelagem física do modelo de banco de dados consiste em levar em conta o sistema gerenciador de banco de dados, além de se nortear pelo modelo lógico quanto ao seu desenvolvimento. 3.2 Modelo Entidade-Relacionamento (MER) 1 O Modelo Entidade-Relacionamento (MER) parte da percepção mais próxima da realidade, é representado por elementos denominados entidades, e as relações entre esses elementos são denominadas relacionamentos. Sua função é representar a estrutura lógica geral do banco de dados e facilitar a implementação do sistema através de um esquema envolvendo representações gráficas. Entidade é o objeto que se distingue por existir através de um conjunto específico de atributos, enquanto Relacionamento é a associação entre entidades. Tanto um conjunto de entidades quanto um conjunto de relacionamentos devem pertencer ao mesmo tipo de entidades. 2 A estrutura lógica geral de um banco de dados pode ser representada graficamente por um diagrama ER, conforme a Fig. 3.1 a seguir, contendo toda a representação gráfica do MER: 12

Entidade (forte) Entidades (fracas) Relacionamentos Relacionamentos dependentes Atributos Atributo chave Atributo chave parcial (Entidades fracas) Atributo multivalorado Atributo composto Atributo derivado E1 R E2 Total participação de E2 em R E1 1 N R E2 Cardinalidade 1:N para E1:E2 em R R (min, max) E Restrição de cardinalidade (min, máx) na participação de E em R Fig. 3.1 - Representação gráfica do MER Para ilustrar, considere parte de um sistema de banco de dados de uma instituição bancária, consistindo em clientes e contas que eles possuem. O diagrama ER correspondente é mostrado na figura abaixo (Fig. 3.2): nome rua cidade número saldo nome Possui Conta Cliente Pertence Conta Fig. 3.2 - Exemplo de diagrama ER 13

Unidade II 3.2.1 Atributos Formalmente um atributo identifica uma entidade constituindo uma parte significativa dos dados armazenados no banco de dados. Pode ser caracterizado pelos seguintes tipos: 1 atributos simples e compostos: a diferença entre atributos simples e compostos é que os compostos são divididos em subpastas, ou seja, outros atributos, o que ajuda a agrupar atributos relacionados e tornar a modelagem mais clara. Ex.: um atributo nome poderia ser estruturado como um atributo composto consistindo em primeiro_nome, sobre_nome e apelido_nome; atributos de valor único e multivalorado: de valor único são atributos que permitem apenas um valor por determinada entidade, ao contrário do multivalorado. Ex.: nr_empréstimo significa que para a entidade empréstimo haverá um único valor. Já nr_fone, significa que para a entidade funcionário poderá haver zero ou vários telefones. 3.2.2 Restrições No esquema ER existem certas restrições com as quais o conteúdo de um banco de dados precisa se conformar. Para determinar tais restrições é preciso examinar as cardinalidades de mapeamento e as restrições de chave. 2 As cardinalidades de mapeamento expressam o número de entidades ao qual outra entidade pode ser associada por um conjunto de relacionamento. São úteis em descrever conjuntos de relacionamento binário, embora possam contribuir para a descrição dos conjuntos de relacionamento que envolvam mais de dois conjuntos de entidades. 14

Existem três tipos de relacionamento entre entidades que indicam a cardinalidade de mapeamento: um-para-um: uma entidade A é associada a no máximo uma entidade B e vice-versa, e é representado pelo sinal: 1:1. Ex.: Gerente 1 Chefia 1 Seção um-para-muitos: uma entidade A é associada a qualquer número de entidades em B, e é representado pelo sinal: 1: N. Ex.: Seção 1 Trabalha N Funcionário muitos-para-muitos: várias entidades A são associadas a várias entidades B, e é representado pelo sinal: N:N ou N:M. Ex.: Fornecedor N Fornece N Produto Chaves 1 Precisamos ter uma maneira de especificar como as entidades de um determinado conjunto de entidades são distinguidas. Conceitualmente, as entidades individuais são distintas; de uma perspectiva de banco de dados, no entanto, a diferença entre elas precisa ser expressa em termos de seus atributos. Portanto, os valores atributos de uma entidade precisam ser tais, que possam identificar unicamente a entidade. Em outras palavras, nenhuma entidade em um conjunto de entidades pode ser exatamente o mesmo valor de outra entidade para todos os atributos (SILBERSCHATZ, 1999). 1

Unidade II 1 Chave primária, chave estrangeira e chave candidata permitem, na modelagem de dados, identificar um conjunto dos atributos que são suficientes para distinguir uma entidade das outras. Também ajudam a identificar relacionamentos unicamente e, assim, distinguir relacionamentos uns dos outros. Chave primária é aquela que indica uma chave candidata que é escolhida pelo projetista de banco de dados como o principal meio de identificar entidades dentro de um conjunto de entidades. Quaisquer duas entidades individuais no conjunto são proibidas de ter o mesmo valor nos atributos de chave ao mesmo tempo. Chamamos de chave estrangeira aquela que surge quando um atributo de um relacionamento é chave primária em outro relacionamento. Enfim, as chaves candidatas são aquelas que ocorrem quando um conjunto de um ou mais atributos, tomados coletivamente, permitem identificar unicamente uma entidade. 3.2.3 Entidades fortes e entidades fracas É possível que um conjunto de entidades não tenha atributos suficientes para formar uma chave primária. Tal conjunto de entidades é nomeado como conjunto de entidades fraco. Um conjunto de entidades que possui uma chave primária é definido como conjunto de entidades forte. 2 30 Para ilustrar, considere o conjunto de entidades transação que possui três atributos: número-transação, data e quantia. Embora cada entidade transação seja distinta, transações em contas diferentes podem compartilhar o mesmo número de transação. Assim, este conjunto de entidades não tem uma chave primária e é, portanto, um conjunto de entidades fraco. Para que este conjunto de entidades fraco tenha significado, ele 16

deve fazer parte de um conjunto de relacionamentos um-paramuitos. Este conjunto de relacionamentos não deve ter atributos descritivos, uma vez que qualquer atributo requerido pode estar associado ao conjunto de entidade fraco. 1 2 Os conceitos de conjuntos de entidades forte e fraca estão relacionados às dependências de existência introduzidas anteriormente. Um membro de um conjunto de entidades forte é por definição uma entidade dominante, enquanto um membro de um conjunto de entidades fraco é uma entidade subordinada. Embora um conjunto de entidades fraco não tenha uma chave primária, precisamos, todavia, de uma forma de distinção entre todas essas entidades no conjunto de entidades que dependa de uma entidade forte particular. O discriminador (ou chave parcial) de um conjunto de entidades fraco é um conjunto de atributos que permite que esta distinção seja feita. Por exemplo, o discriminador do conjunto de entidades fraco transação é o atributo número-transação, uma vez que para cada conta um número de transação identifica uma única transação. A chave primária de um conjunto de entidades fraco é formada pela chave primária do conjunto de entidades forte, do qual ele é dependente de existência (ou dependência existencial), mais seu discriminador. No caso do conjunto de entidades transação, sua chave primária é número-conta, número-transação; onde número conta identifica a entidade dominante de uma transação e número-transação distingue entidades de transação dentro da mesma conta. 30 As entidades fracas são representadas por um retângulo duplicado. O conjunto de relações que identifica as entidades fracas é representado por losângulos duplicados. Os atributos que constituem a chave parcial (ou discriminadores) são sublinhados de forma tracejada. 17

Unidade II Enfim, na Fig. 3.4, o esquema geral de modelagem de dados usando MER: Minimundo Obtenção e análise de requisitos Requisitos da base de dados Projeto conceitual Esquema conceitual (em um modelo de dados de alto nível) Independente de qualquer SGBD SGBD específico Mapeamento do modelo de dados Esquema conceitual (em um modelo de dados de um SGBD específico) Projeto físico Esquema Interno (para o mesmo SGBD) Fig. 3.4 - Esquema geral de modelagem de dados usando MER 3.3 Dicionário de dados O Dicionário de dados é uma espécie de banco de dados isolado (mas um banco de dados do sistema, não um banco de dados do usuário); ele contém dados sobre os dados (também chamados metadados ou descritores) ou seja, definições de outros objetos do sistema, em vez de somente dados crus (DATE, 03). Um dicionário completo também incluirá muitas informações adicionais mostrando, por exemplo, os programas que utilizam determinadas partes do banco de dados, os usuários que exigem certos relatórios, etc. 18

Exemplo: Entidade: Cliente Atributo Classe Domínio Tamanho Descrição Código_cliente Determinante Numérico Nome Simples Texto 0 Telefone Multivalorado Texto 0 Cidade Simples Texto 0 Data de nascimento Simples Data Valores sem as máscaras de entrada Formato dd/mm/aaaa Analisando a tabela poderíamos descrever o seguinte dicionário de dados: cliente é o nome da entidade que foi definida no modelo; atributo são os atributos da entidade-cliente; classe determina o tipo do atributo; domínio determina o tipo da variável (ser numérico, texto, data e boleano); tamanho define a quantidade de caracteres que será necessária para armazenar o conteúdo da variável; descrição descreve o que é aquele atributo (opcional). 1 O Microsoft Excel também pode ser utilizado para descrever as tabelas do dicionário de dados. Não existe regulamento a respeito da ferramenta a ser utilizada. 3.4 Ferramentas CASE 3.4.1 Definição Ferramentas computacionais são ferramentas que auxiliam na criação dos diagramas. O que se espera com o uso delas é acelerar o processo de representação dos diagramas, com suas tabelas e relacionamentos. 19

Unidade II 1 Para Medeiros (06), o processo de análise e definição do esquema de banco de dados é uma tarefa totalmente executada pelo especialista em bancos de dados. A ferramenta é um grande complemento no processo de desenhar os diagramas e documentá-los. As ferramentas CASE, do inglês Computer-Aided Software Engineering, ou seja, Engenharia de Software Auxiliada por Computador, auxilia o analista na construção do sistema, prevendo, ainda na etapa de estudos, como será sua estrutura, quais serão suas entidades e relacionamentos. São elaborados vários diagramas que, em conjunto, constituem praticamente uma planta do sistema a ser desenvolvido. As ferramentas CASE suportam anotações advindas da análise estruturada, surgida no final da década de 1970, que se funda basicamente em três modelos: o Modelo de Entidade Relacional, o Diagrama de Fluxo de Dados e o Dicionário de Dados. Existem inúmeras ferramentas CASE disponíveis no mercado. Entre elas podemos citar: Rational Rose, ErWin, Oracle Designer, Genexus, Clarify, Dr. CASE, Visio, etc. Daremos atenção à ferramenta mais utilizada no mercado: a ErWin. 3.4.2 A ferramenta CASE ErWin 2 O CASE ErWin ficou muito tempo conhecido como ErWin? ERX, uma ferramenta leve e de fácil utilização. Porém, em 1998, a desenvolvedora do ErWin, a Logic Works, foi comprada pela Platinum. Na época, era disponibilizada a versão 2., que foi transformada na versão Platinum ErWin ERX 3.2. Essa versão existiu até 1999, quando a CA Computer Associates adquiriu a Platinum. 30 Quando a CA adquiriu o ErWin, incluiu o software em um pacote de ALM (Aplication Lyfe Cycle Management) chamado Allfusion, o ErWin passou a se chamar Allfusion ErWin Data

Modelere. Com isso, ganhou uma interface mais arrojada e alguns recursos muito interessantes. Como duas ferramentas voltadas à entidade-relacionamento, com visões lógica e física do modelo, o diagrama é feito com recursos de arrastar e soltar, com todas as validações de chaves primárias e estrangeiras (Fig. 3.4). Fig. 3.4 - Tela inicial do ErWin As ferramentas suportam uma grande quantidade de banco de dados, como DB2, Oracle, Ingres, SQL Server, Sybase, Progress, Clipper, dbaseiii, dbaseiv, Access, FoxPro e Paradox. O ErWin disponibiliza uma série de recursos muito interessantes, como: complete compare: uma ferramenta que simplesmente compara a estrutura de banco de dados com o MER, apontando as diferenças existentes; 1 comando de impressão do DER: disponibiliza o redimensionamento da escala do diagrama, permitindo controlar e prever em quantas páginas será impresso o diagrama, sem alterar a posição das entidades; 21

Unidade II model sources: um modelo ou um projeto pode ser constituído de vários outros modelos, ou seja, pode ser criado um vínculo do ErWin e depois sincronizá-los. Isso é útil em casos típicos de compartilhamento de entidades entre vários projetos. O ErWin possui um gerador de relatórios em vários formatos, de fácil manipulação e interação pelo usuário (Fig.3., 3.6, 3.7 e 3.8). A ferramenta é apenas um complemento às atividades de modelagem do banco de dados. Se o processo de modelar e analisar o problema for realizado de forma errada, o software fará a representação gráfica também errada. Fig. 3. - Tela do ErWin Biblioteca. Fig. 3.6 - Tela do ErWin Edição de campos. 22

Fig. 3.7 - Tela do ErWin Definição de cardinalidade. Fig. 3.8 - Tela do ErWin Geração de diversos bancos de dados. 23