bdm aula 6 - normalização - ticianne darin

35
Bancos de Dados Multimídia Ticianne Darin

Upload: ticianne-darin

Post on 21-Jun-2015

1.082 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Bdm   aula 6 - normalização - ticianne darin

Bancos de Dados

Multimídia

Ticianne Darin

Page 2: Bdm   aula 6 - normalização - ticianne darin

Normalização

Page 3: Bdm   aula 6 - normalização - ticianne darin

Normalização

Processo que consiste em estruturar a informação em tabelas da forma mais adequada tendo em consideração as operações que podem vir a ser executadas sobre essa informação.

Page 4: Bdm   aula 6 - normalização - ticianne darin

Normalização

Permite evitar redundâncias desnecessárias e eliminar problemas que podem ocorrer em operações de inserção, eliminação e atualização de dados.

Page 5: Bdm   aula 6 - normalização - ticianne darin

Anomalias de Atualização

ENOME ECOD DNO DNOME DGER João Silva 620.042 D1 Pessoal Tereza Costa Maria Alves 328.345 D2 Brinquedos Marcia Mendes Ana Pereira 245.980 D2 Brinquedos Marcia Mendes Fabio Costa 567.987 D3 Roupas Iris Pereira Jane Lima 456.321 D1 Pessoal Tereza Costa

DNO DNOME, DGER

Para um mesmo valor de DNO, DNOME e DGER terão os mesmos valores

Page 6: Bdm   aula 6 - normalização - ticianne darin

Solução: Decomposição

ENOME ECOD DNO João Silva 620.042 D1 Maria Alves 328.345 D2 Ana Pereira 245.980 D2 Fabio Costa 567.987 D3 Jane Lima 456.321 D1

DNO DNOME DGER D1 Pessoal Tereza Costa D2 Brinquedos Marcia Mendes D3 Roupas Iris Pereira

Page 7: Bdm   aula 6 - normalização - ticianne darin

ID Nome Endereço Hobby

1111 Joe 123 Main biking 1111 Joe 123 Main hiking …………….

ID Nome Endereço Hobby

1111 Joe 123 Main {biking, hiking}

Modelo ER

Modelo Relacional

Redundância

ID Nome

ID Endereço

Page 8: Bdm   aula 6 - normalização - ticianne darin

Dependência Funcional

Page 9: Bdm   aula 6 - normalização - ticianne darin

Dependência Funcional

• Seja a tabela A com a seguinte estrutura: A (x,y,z,w):

– z é funcionalmente dependente do atributo x, se, para um dado valor de x o valor de Z é sempre o mesmo.

– x é dominante, z é dependente

x z

Page 10: Bdm   aula 6 - normalização - ticianne darin

Dependência Funcional Elementar

• Seja a tabela A com a seguinte estrutura: A (x,y,z,w):

– quando o atributo w depende do conjunto {x,y} como um todo, e não depende de nenhum dos seus elementos (ou subconjuntos) tomados isoladamente

– w é irredutivelmente dependente de {x,y}

{x,y} w

Page 11: Bdm   aula 6 - normalização - ticianne darin

Exemplo

MATRÍCULAS (disciplina, estudante, semestre, nota)

{disciplina, estudante} semestre, nota

Estudante Disciplina Semestre Nota Erico Silva Banco de Dados 2012-2 8,5 Erico Silva Banco de Dados 2012-2 7,5

Page 12: Bdm   aula 6 - normalização - ticianne darin

Regras de Inferência para DF

• RI1:Regra da reflexidade: Se X Y então XY

• RI2:Regra do acréscimo: Se XY então WX WY

• RI3:Regra da Transitividade: Se X Y e Y Z então X Z

• RI4:Regra da União: Se X Y e X Z então X YZ

• RI5:Regra da Decomposição: Se X YZ então X Y e X Z

• RI6:Regra da Pseudotransitividade: Se XY e WYZ então XW Z

Page 13: Bdm   aula 6 - normalização - ticianne darin

Normalização de Relações

• Levar um esquema de relação por uma série de testes

– Certifica se ele satisfaz certa forma normal

• Testes de forma normal

Page 14: Bdm   aula 6 - normalização - ticianne darin

Normalização de Relações

• Propriedades que os esquemas relacionais devem ter:

– Propriedade de junção não aditiva

• Extremamente crítica

– Propriedade de preservação de dependência

• Desejável, mas às vezes é sacrificada por outros fatores

Page 15: Bdm   aula 6 - normalização - ticianne darin

Na prática...

• Projetos resultantes de alta qualidade e atendem as propriedades desejáveis

• Normalização apenas até a 3FN, FNBC ou, no máximo, 4FN

• Não precisam normalizar para a forma normal mais alta possível

Page 16: Bdm   aula 6 - normalização - ticianne darin

Definições de chaves e atributos

participantes em chaves

• Definição de superchave e chave

• Chave candidata

– Se um esquema de relação tiver mais de uma chave

• Uma é a chave primária

• As outras são chamadas chaves secundárias

Page 17: Bdm   aula 6 - normalização - ticianne darin

Primeira Forma Normal (1NF)

Uma relação de variáveis está na primeira forma normal se cada tupla contiver um valor para cada atributo.

Page 18: Bdm   aula 6 - normalização - ticianne darin

Primeira Forma Normal (1NF)

• Parte da definição formal de uma relação no modelo relacional básico (plano)

• Os únicos valores de atributo permitidos são os valores atômicos (ou indivisíveis)

Page 19: Bdm   aula 6 - normalização - ticianne darin

Primeira Forma Normal (1NF)

• Técnicas principais para conseguir a primeira forma normal

– Remover o atributo e colocá-lo em uma relação separada

– Expandir a chave

– Usar vários atributos atômicos

Page 20: Bdm   aula 6 - normalização - ticianne darin

Primeira Forma Normal (1NF)

• Não permite relações aninhadas

– Cada tupla pode ter uma relação dentro dela

• Para alterar a 1NF:

– Remova os atributos da relação aninhada para uma nova relação

– Propague a chave primária para ela

– Desaninhar a relação para um conjunto de relações 1NF

Page 21: Bdm   aula 6 - normalização - ticianne darin
Page 22: Bdm   aula 6 - normalização - ticianne darin

Segunda Forma Normal (2NF)

Uma relação de variáveis encontra-se na segunda forma normal se estiver na primeira forma normal e todos os atributos que não são chave primária, dependem irredutivelmente da chave primária.

Page 23: Bdm   aula 6 - normalização - ticianne darin

Segunda Forma Normal (2NF)

• Baseada no conceito de dependência funcional total (não parcial)

Page 24: Bdm   aula 6 - normalização - ticianne darin
Page 25: Bdm   aula 6 - normalização - ticianne darin

Terceira Forma Normal (3NF)

Uma relação encontra-se na terceira forma normal se já estiver na segunda forma normal e todos os seus atributos que não forem chave primária forem não transitivamente dependentes da chave primária.

Page 26: Bdm   aula 6 - normalização - ticianne darin

Terceira Forma Normal (3NF)

• Baseada no conceito de dependência transitiva

Page 27: Bdm   aula 6 - normalização - ticianne darin
Page 28: Bdm   aula 6 - normalização - ticianne darin
Page 29: Bdm   aula 6 - normalização - ticianne darin

Forma Normal de Boyce-Codd

Por definição uma relação está na BCNF se todos os atributos são funcionalmente dependentes da chave, de toda a chave e nada mais do que a chave

Page 30: Bdm   aula 6 - normalização - ticianne darin

Forma Normal de Boyce-Codd

• Cada relação em FNBC também está na 3FN

– Uma relação na 3FN não necessariamente está na FNBC

• Diferença:

– Condição que permite que A seja principal está ausente da FNBC

• A maioria dos esquemas de relação que estão na 3FN também estão na FNBC

Page 31: Bdm   aula 6 - normalização - ticianne darin

FNBC versus 3NF

• FNBC

– Para cada DF X->Y de uma relação R:

• Y é um subconjunto de X ou

• X é uma superchave da relação

• 3NF

– Para cada DF X-> Y de uma relação R:

• Y é um subconjunto de X ou

• X é uma superchave da relação

• Y é um subconjunto de K, para alguma chave K de R (um subconjunto de uma chave não é uma chave)

Page 32: Bdm   aula 6 - normalização - ticianne darin

MATRÍCULA (s#, c#, semestre, nota)

- S#, c#, semestre nota

EMPREGADO (emp, dept, sal)

- emp sal

- suponha que um empregado pode trabalhar

em mais de um departamento.

Os esquemas estão em BCNF?

Page 33: Bdm   aula 6 - normalização - ticianne darin

Decompõe!

EMPREGADO (emp, dept, sal)

EMP1 (emp, dept) EMP2 (emp, sal)

Page 34: Bdm   aula 6 - normalização - ticianne darin

Exercício em Sala

Page 35: Bdm   aula 6 - normalização - ticianne darin

Até a próxima aula!

Feliz é o homem que acha sabedoria, e

o homem que adquire entendimento; Provérbios 3:13