Modelagem Bd

  • View
    530

  • Download
    9

Embed Size (px)

Transcript

Instituto de Ensino Santo Antonio

Apostila de Modelagem de DadosCurso: Tcnico de Informtica Ano: 2 Srie Disciplina: A.S.M.D.

Verso 2007Elaborado por: Prof. Fernando Salles Claro

Apostila de A.S.M.D. Mdulo de Modelagem de Dados

I

SumrioCAPTULO 1 MODELAGEM DE DADOS .............................................................................................................1 INTRODUO .............................................................................................................................................................1 Sistemas Gerenciadores de Bancos de Dados .....................................................................................................1 MODELOS DE BANCOS DE DADOS .............................................................................................................................1 Modelo Hierrquico.............................................................................................................................................1 Modelo de Rede ...................................................................................................................................................2 Modelo Relacional...............................................................................................................................................3 CAPTULO 2 - MODELO ENTIDADE-RELACIONAMENTO ...........................................................................5 Modelo Relacional e Modelos Semnticos de Dados ..........................................................................................5 ENTIDADES ................................................................................................................................................................5 Concepo de uma entidade ................................................................................................................................7 RELACIONAMENTOS ..................................................................................................................................................7 Grau e Classe de um relacionamento ..................................................................................................................8 Algumas Extenses ao Modelo ER.....................................................................................................................10Quando a cardinalidade no exatamente 1....................................................................................................................10 Agregao .......................................................................................................................................................................11 Generalizao/Especializao .........................................................................................................................................12

UTILIZAO DO MTODO ENTIDADE-RELACIONAMENTO ........................................................................................13 VANTAGENS DO MTODO ENTIDADE RELACIONAMENTO .....................................................................................13 CAPTULO 2 NORMALIZAO ..........................................................................................................................15 INTRODUO ...........................................................................................................................................................15 PRIMEIRA FORMA NORMAL (1FN): ELIMINAO DE DOMNIOS MULTIVALORADOS ................................................15 SEGUNDA FORMA NORMAL (2FN): DEPENDNCIA DO ATRIBUTO DETERMINANTE ...................................................18 TERCEIRA FORMA NORMAL (3FN): ELIMINAO DA DEPENDNCIA FUNCIONAL TRANSITIVA .................................19 FORMA NORMAL DE BOYCE-COOD (FNBC) ............................................................................................................20 EXERCCIOS - MODELAGEM DE BANCO DE DADOS..................................................................................21

Apostila de A.S.M.D. Mdulo Modelagem de Dados

1

Captulo 1 Modelagem de dadosIntroduo

Bancos de Dados (BD) uma rea da computao que apresentou grande desenvolvimento nas dcadas de 70 e 80 e continua em ritmo acelerado de pesquisa e desenvolvimento. Com as bases tericas da tecnologia relacional lanadas nas dcada de 70 e o lanamento comercial de muitos Sistemas Gerenciadores de Banco de Dados (SGBDs) relacionais na dcada de 80, o gerenciamento de grandes volumes de dados pode ser feito cada vez mais de forma segura, eficiente e barata.Sistemas Gerenciadores de Bancos de Dados

SGBD Sistema Gerenciador de Banco de Dados (ou DBMS Database Management System) um sistema utilizado para gerenciar dados que esto armazenados de forma organizada, permitindo incluir, alterar, excluir, consultar e manipular dados. O tratamento da informao em um banco de dados oferece vantagens: A disponibilidade dos dados para excluso, consulta ou alterao pode ser autorizada pelo Administrador de Banco de Dados (DBA Data Base Administrator) no projeto, antes das aplicaes serem desenvolvidas, permitindo com isso a segurana e a privacidade dos dados; A padronizao reforada. Os tipos de dados mais importantes so atributos que tm seus nomes e tamanhos definidos j no projeto do banco de dados. Os dados dizem respeito a um ambiente, empresa ou corporao e esto disponveis independentemente da aplicao. Um projeto de banco de dados coerente reduz ou elimina a redundncia, favorecendo a manuteno da integridade dos dados.

A arquitetura de um SGBD estabelecida a partir de um modelo de dados, que uma forma de representao que resulta de uma abstrao. O projeto de um banco de dados envolve o desenvolvimento de um modelo formal relativo estruturao dos dados de todo um empreendimento. Os SGBDs existentes no mercado geralmente adotam o modelo hierrquico, de rede ou relacional. Dentre os trs, o mais utilizado o modelo de rede. O objetivo de todos os modelos de dados modelar a realidade to proximamente quanto possvel.

Modelos de Bancos de DadosModelo Hierrquico

Os SGBDs baseados no modelo hierrquico foram os primeiros sistemas a estarem disponveis comercialmente. No modelo hierrquico, o usurio percebe o banco de dados como uma estrutura de rvores que envolvem registros e ligaes. Cada registro pode possuir um nmero qualquer de descendentes, mas apenas um ascendente (exceto a raiz, que no possui ascendente). O registro ascendente guarda referncias do conjunto de descendentes que possui.

Apostila de A.S.M.D. Mdulo Modelagem de Dados

2

A navegao dentro de um banco de dados hierrquico feita com comandos do tipo acessar primeiro e acessar prximo ( get first e get next), admitindo clusulas e predicados para pesquisa. A figura abaixo ilustra a representao de alguns registros organizados hierarquicamente para uma locadora de veculos. Como voc pode ver, as rvores hierrquicas so plantadas de cabea para baixo.

Fig. 1 - Exemplo de um modelo hierrquico

Dada a limitao de que cada registro pode possuir somente um ascendente, seu contedo pode ter que ser repetido vrias vezes. Se for criada a filial Manaus, por exemplo, que tambm tem um tipo de veculo esporte, este registro do tipo esporte ser diferente do registro j existente para a filial So Paulo. Esta repetio uma grande desvantagem: o espao consumido para armazenagem desperdiado com a mesma informao. Alm disso, se a atualizao de um valor no for feita para todos os registros repetidos, o banco de dados fica inconsistente. Como resultado, a implementao de um banco de dados em um sistema hierrquico pode requerer uma boa quantidade de trabalho para contornar as limitaes. O modelo hierrquico um caso particular do modelo de rede. o mais restrito entre os trs vistos aqui.

Modelo de Rede

No modelo de rede, a viso do usurio a de um grafo ou uma malha de ligaes umpara-muitos entre os registros. Um tipo de registro pode estar envolvido em mais de um relacionamento, pode ter vrios ascendentes e vrios descendentes O grupo CODASYL (que desenvolveu o Cobol), atravs do Database Task Group (DBTG) desenvolveu um modelo de rede que o mais difundido e aceito. O modelo DBTG criou a figura do grupo ou conjunto, uma representao para os relacionamentos. Cada conjunto tem um tipo de registro proprietrio, que s pode participar de uma ocorrncia do conjunto, e um tipo de registro membro, que pode participar em qualquer quantidade de ocorrncias A figura a seguir apresenta registros ligados de acordo com uma estrutura de grafo, prpria do modelo rede:

Apostila de A.S.M.D. Mdulo Modelagem de Dados

3

Fig. 2 - Exemplo de um modelo rede

Na figura acima, h um relacionamento filial-veculo, onde o veculo de placas ABC1234 proprietrio e a filial de cdigo SPA um registro membro do conjunto.

Modelo Relacional

Um banco de dados relacional visto pelo usurio como um conjunto de tabelas. Uma tabela ou relao formada por linhas conhecidas como t-uplas (l-se tuplas) e colunas. Cada coluna tem um conjunto de valores possveis chamado domnio. Em linguagem de computao, tabela ou relao equivale a arquivo, t-upla equivale a registro e coluna equivale a campo. A representao por um conjunto de tabelas estabelece a diferena em relao ao modelo rede, que um conjunto de registros e relacionamentos atravs de ligaes. Portanto, definimos um sistema relacional como aquele onde os dados so notados pelos usurios como tabelas e as operaes aplicveis ao sistema geram tabelas partindo da primeira. Na figura abaixo, podemos observar um exemplo de modelo relacional:

Fig. 3 - Exemplo de um modelo relacional

A teoria sobre o modelo relacional apresenta dois formalismos para a manipulao de banco de dados: a lgebra relacional e o clculo relacional, que ser