Bancos de Dados Relacionais

Slides:



Advertisements
Apresentações semelhantes
(Dependência Funcional e Normalização)
Advertisements

Normalização de Dados. 2 SGBD + Banco de Dados Independência de dados Consistência de dados.
Normalização.
Anomalias de Inserção, Remoção e Atualização
Normalização (4FN) Na literatura aparecem outras formas normais, como a forma normal de Boyce/Codd, a 4FN e a 5FN. Destas a única que tem importância na.
Sistemas de Informação Prof. Me. Everton C. Tetila Dependências funcionais e normalização para bancos de dados relacionais Banco de Dados I.
O Espaço Produto Misto Exemplo 4 (4.31): Seja u um vetor perpendicular a v e w. Sabendo que v e w formam um ângulo de 30° e que ||u|| = 6, ||v|| = 3 e.
A TEORIA DA COMUNICAÇÃO E SEUS AXIOMAS PROF. FERNANDA VAZ HARTMANN.
Linguagem de Programação – Aula 03 Prof. Me. Ronnison Reges Vidal.
Categorias Computacionais N Um modelo categorial para bancos de dados Vítor De Araújo
Banco de Dados Relacionamentos entre Entidades Aula de 15/03/2016 Professor Alessandro Carneiro.
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
Prof. André Luiz da Costa Carvalho RELACIONAMENTOS BINÁRIOS, ATRIBUTOS E CHAVES.
MATRIZ É uma tabela disposta em “m” linhas e “n” colunas.
Normalização. CONCEITOS  Decomposição de esquemas para evitar anomalias de atualizações;  Processo de avaliação campos de uma tabela, com o objetivo.
Texto dissertativo-argumentativo O desenvolvimento
(Material cedido pela Profa. Daniela Leal Musa)
1) Defina sequências numéricas.
RODOLFO SOARES TEIXEIRA OBMEP NA ESCOLA
Prof.: Bruno Rafael de Oliveira Rodrigues
CÁLCULO NUMÉRICO Aula 2 – Introdução ao Programa de Computação Numérica (PCN) e Teoria dos Erros.
Banco de Dados I Modelagem Relacional
Márcio Soussa Estrutura de Dados Márcio Soussa
Universidade Federal de Santa Catarina
pROFEssor: jean vilela
Seleção de Atributos.
RODOLFO SOARES TEIXEIRA OBMEP NA ESCOLA
ADSD Introdução.
TEORIA DOS CONJUNTOS.
CÁLCULO COMBINATÓRIO.
Álgebra Relacional Vania Bogorny.
Os axiomas de Zermelo-Fraenkel
Sistemas Prof. Luis S. B. Marques MINISTÉRIO DA EDUCAÇÃO
PROBABILIDADES.
ALGEBRA LINEAR AUTOVALORES E AUTOVETORES Prof. Ademilson
Algoritmos e Fluxogramas
Projecto de bases de dados relacionais: Normalização
Prof: Márcio Soussa Centro Universitário Jorge Amado
Curso Superior de Tecnologia em BD
ALGEBRA LINEAR DIAGONALIZAÇÃO DE OPERADORES
6ª aula PROBLEMA DE TRANSPORTES – Parte 2 UNIDADE 5
Introdução à Programação
Modelos de Banco de Dados
Universidade; Faculdade (de cada autor); do autor apresentador
CES-11 ALGORITMOS E ESTRUTURAS DE DADOS
BANCO DE DADOS II.
Intersecção e Reunião de Intervalos
Análise & Projeto – Diagrama de Entidade-Relacionamento
Operações com Conjuntos
, operações, intervalos e desigualdades.
Aula 07 e 08 - Funções Definição de função, representação de funções, função crescente e decrescente, função linear , polinomial, racionais e algébricas.
MER – Modelo de Entidade Relacionamento
Álgebra Linear Diagonalização de Operadores
Complexidade de Algoritmos
Utilidade Tradução: Sergio Da Silva
Maneiras de classificar o mercado financeiro
RAZÃO E PROPORÇÃO (Aula 3)
Universidade Federal de Santa Catarina
Universidade; Faculdade (de cada autor); do autor apresentador
Modelagem de Dados 4. Normalização
Desenho Aplicado à Automação e Controle
1ª Forma Normal Formas Normais
Principais características
Prática O-R Fernando Fonseca.
Introdução a progrmação Comandos condicionais: if e switch
Problemas de Transporte (Redes)
Sistemas de Informação
Ana Carolina Salgado Fernando Fonseca Valéria Times
MATEMÁTICA.
MATEMÁTICA.
Transcrição da apresentação:

Bancos de Dados Relacionais Curso de Modelagem de DadosCurso de Modelagem de Dados Bancos de Dados Relacionais Projeto de Bancos de Dados Relacionais Bancos de Dados I DCC/UFRJZilli Informática

Projeto de BD Relacionais Técnicas de projeto Teoria baseada nas dependências funcionais, buscando-se algoritmos automatizados para verificar a adequação de esquemas relacionais. Muitos resultados importantes publicados nas décadas de 70 e 80. Bancos de Dados I

Normalização Problema: Dada uma lista de itens de dados a representar no computador, como decidir quais as relações que vão existir e quais os seus atributos Conceitos envolvidos: Dependências funcionais Formas normais Relação universal Normalização ajuda, mas não resolve! Bancos de Dados I

Dependências funcionais Definição: Dada uma relação R, o atributo Y de R é funcionalmente dependente de um atributo X de R se e somente se, sempre que duas tuplas de R têm o mesmo valor para X têm também o mesmo valor para Y. Para que serve isto? Normalização, entendimento do significado dos dados Bancos de Dados I

Atributos e suas dependências funcionais (1) Considerando os atributos: CodVôo, CodEmp, NomeEmp, Telefone Data, H_Saída, H_Chegada, H_Saída_Real, H_Chegada_Real, CodAvião, Tipo, Capacidade Origem, Destino, Distância Bancos de Dados I

Atributos e suas dependências funcionais (2) Data H_Saída_Real H_Chegada_Real Origem Destino H_Saída H_Chegada CodVôo Distância CodAvião CodEmp Capacidade Telefone NomeEmp Bancos de Dados I

Tratando dependências funcionais Axiomas de Armstrong A1. Reflexividade: Se Y  X  U então X → Y Dá as dependências triviais, que não dependem de F. A2. Aumento: Se X → Y e Z  U então XZ → YZ X, Y e Z são conjuntos de atributos e X → Y pode estar em F ou ter sido derivada pelos axiomas. A3. Transitividade: Se X →Y e Y →Z então X →Z Bancos de Dados I

Tratando dependências funcionais Axiomas de Armstrong (inferidos) A4. União: Se X → Y e X → Z então X → YZ Dá as dependências triviais, que não dependem de F. A5. Pseudotransitividade: Se X → Y e WY → Z então XW → Z A6. Decomposição: Se X → Y e Z  Y então X → Z Uma consequência importante da decomposição: Se A1,...,An são atributos então X → A1,...,An verifica-se se e somente se X → Ai para cada i Bancos de Dados I

Proposições Os axiomas de Armstrong são robustos e completos (sound and complete). Bancos de Dados I

Formas normais Verificam as relações escolhidas Evitam problemas de atualização ineficientes Há 4 formas normais usualmente empregadas Bancos de Dados I

Exemplo de projeto pobre Bancos de Dados I

Anomalias Redundância O nome da empresa aparece mais de uma vez Inconsistência O nome da empresa poderia aparecer com valores diferentes para o mesmo código de empresa Inserção Não é possível inserir uma empresa sem que haja vôos Remoção Remover todos os vôos significa remover a empresa Bancos de Dados I

Exemplo de relação transgressora Primeira forma normal Todos os atributos têm valores atômicos Exemplo de relação transgressora Problema: vários telefones na mesma coluna Solução: desmembrar em mais de uma relação Bancos de Dados I

Primeira forma normal Desmembramento Bancos de Dados I

Exemplo de relação transgressora Segunda forma normal Todo atributo não chave é totalmente dependente da chave primária Exemplo de relação transgressora Problema: CodAvião é não chave e não depende da chave primária Solução: desmembrar em mais de uma relação Bancos de Dados I

Solução: CodAvião deve ser movido para outra tabela Segunda forma normal Desmembramento Solução: CodAvião deve ser movido para outra tabela Bancos de Dados I

Problema: NomeEmp é transitivamente dependente de CodVôo Terceira forma normal Todo atributo não chave é não transitivamente dependente da chave primária Exemplo de relação transgressora Problema: NomeEmp é transitivamente dependente de CodVôo Bancos de Dados I

Terceira forma normal Desmembramento Bancos de Dados I

Forma normal Boyce-Codd Todo determinante é uma chave Exemplo de relação transgressora Problema: CodVôo, Origem e Destino é um determinante para H_Saída Solução: desmembrar em mais de uma relação (ou, em alguns casos, introduzir uma chave) Bancos de Dados I

Chaves Se R é um esquema relacional com atributos A1,...,An e dependências funcionais F e X é um subconjunto de A1,...,An, diz-se que X é uma chave de R se: 1. X A1,...,An está em F 2. não existe um subconjunto YX tal que Y  A1,...,An esteja em F Bancos de Dados I

Exemplo Esquema R(Cidade, Rua, Número, CEP) Dependências CEP  Cidade As combinações de atributos abaixo podem ser definidas como chaves? {Cidade, Rua, Número} {CEP, Rua, Número} Bancos de Dados I

Aplicando axiomas {Cidade, Rua, Número} logo são chaves. CEP  Cidade (dado) CEP Rua Número  Cidade Rua Número (aumento) Cidade Rua Número  CEP (dado) Cidade Rua Número  CEP Cidade Rua Número (aumento) CEP Rua Número  CEP Cidade Rua Número (transitividade) logo {Cidade, Rua, Número} {CEP, Rua, Número} são chaves. Bancos de Dados I

Formas normais Uma relação R está na terceira forma normal se não existe uma chave X em R, um conjunto de atributos YR e um atributo não chave A, disjunto de X e Y, tal que: 1. X  Y verifica-se em R; 2. Y  A verifica-se em R; 3. Y  X não se verifica em R. Se R satisfaz as condições acima sempre que YX então diz-se que R está na segunda forma normal. Bancos de Dados I

Formas normais Um relação é dita na Forma normal Boyce-Codd se sempre que X  A se verifica em R, e A não está em X, então X inclui uma chave de R. Proposição: Se uma relação R está nesta forma normal então está também na terceira forma normal. Bancos de Dados I

Formas normais e decomposição Qualquer relação tem uma decomposição sem perda na FNBC. Qualquer relação tem uma decomposição sem perda na 3FN que preserva as dependências funcionais. Bancos de Dados I

Dependências multivaloradas X multidetermina Y, ou X  Y, se para valores dos atributos X há um conjunto de zero, um ou mais valores associados dos atributos Y, e esse conjunto de valores não está associado aos valores dos atributos R - X - Y. Bancos de Dados I

Dependências multivaloradas Diz-se que X Y verifica-se em R se sempre que existirem t1 e t2 na instância de R, com t1[X]=t2[X], então existem também as u1 e u2, onde 1. u1[X] = u2[X] = t1[X] = t2[X] 2. u1[Y] = t1[Y] e u1[R - X - Y] = t2[R - X - Y] 3. u2[Y] = t2[Y] e u2[R - X - Y] = t1[R - X - Y] Bancos de Dados I

Dependências multivaloradas Exemplo Bancos de Dados I

Dependências multivaloradas Testando CodVôo  Origem, Destino, H_Saída Bancos de Dados I

Quarta forma normal Uma relação R está na Quarta forma normal se sempre que houver uma dependência multivalorada X →→ Y, onde Y não é vazio nem subconjunto de X, e XY não inclui todos os atributos de R, então X inclui alguma chave de R. Bancos de Dados I

Axiomas para D.F. e D.M. A1. Reflexividade: Se Y  X  U então X → Y A2. Aumento: Se X → Y e Z  U então XZ → YZ A3. Transitividade: Se X →Y e Y →Z então X →Z A4. Complemento: Se X →→ Y então X →→ U - X - Y A5. Aumento: Se X →→ Y e V  W então WX →→ VY A6. Transitividade: Se X →→ Y e Y →→ Z então X →→ Z - Y A7. Se X → Y então X →→ Y A8. Se X →→ Y , Z  Y e para algum W disjunto de Y tem-se que W→ Z, então X→ Z Bancos de Dados I

Curso de Modelagem de DadosCurso de Modelagem de Dados Proposições sobre 4FN Se D inclui apenas dependências funcionais então sempre que R estiver na 4FN estará na FNBC. É possível encontrar uma decomposição sem perda tal que cada relação produzida esteja na 4FN. O algoritmo que determina quando uma decomposição é ou não sem perda pode ser adaptado para dependências multivaloradas. Bancos de Dados I DCC/UFRJZilli Informática