normalização de dados profa. dra. marilde santos departamento de computação – ufscar...
TRANSCRIPT
Normalização de DadosNormalização de Dados
Profa. Dra. Marilde SantosProfa. Dra. Marilde SantosDepartamento de Computação – Departamento de Computação –
UFSCarUFSCar
[email protected]@dc.ufscar.br
Novembro de 2003 Profa. Marilde Santos 2
SGBD + Banco de Dados
• Independência de dados
• Consistência de dados
Novembro de 2003 Profa. Marilde Santos 3
Consistência de Dados
SGBDRegras de Integridade
• Validade
• Completeza
• Consistência
Novembro de 2003 Profa. Marilde Santos 4
Consistência de Dados
O controle de consistência pode ser exercido:
• Pelo gerenciador;
• Pelos aplicativos;
• Pela própria construção do sistema.
Novembro de 2003 Profa. Marilde Santos 5
Consistência de Dados
Pela própria construção do sistema.
• Controlar a construção do sistema através da
criação de tabelas segundo regras que garantam
a manutenção de certas propriedades.
• As tabelas que atendem a um determinado
conjunto de regras, diz-se estarem em uma
determinada forma normal.
Novembro de 2003 Profa. Marilde Santos 6
Formas NormaisPrimeira Forma Normal
Uma relação está na 1a. forma normal quando todos
os seus atributos são atômicos e monovalorados.
Nome
Idade DataMatrícula
?DataNasc
São atômicos?
Novembro de 2003 Profa. Marilde Santos 7
Formas NormaisPrimeira Forma Normal
Uma relação está na 1a. forma normal quando todos
os seus atributos são atômicos e monovalorados.
Nome
Idade DataMatrícula
!DataNasc
São atômicos?
DataNasc e DataMatrícula serão atributos
atômicos se não forem utilizadas “partes” das
datas em outras relações do Banco de Dados.
Novembro de 2003 Profa. Marilde Santos 8
Formas NormaisPrimeira Forma Normal
Atributos multivalorados1) Quando a quantidade de valores é pequena e
conhecida a priori;
Substitui-se o atributo multivalorado por um conjunto
de atributos de mesmo domínio, cada um representando
a ocorrência de um valor.
Novembro de 2003 Profa. Marilde Santos 9
Formas NormaisPrimeira Forma Normal
Atributos multivalorados.2) Quando a quantidade de valores é muito grande,
variável ou desconhecida.
Retira-se da relação o atributo multivalorado, e cria- se
uma nova relação que tem o mesmo conjunto de
atributos chave, mais o atributo multivalorado como
chave, porém tomado como monovalorado.
Novembro de 2003 Profa. Marilde Santos 10
Formas NormaisPrimeira Forma Normal
Atributos multivalorados
Nome
Idade DataNasc
Telefone
Quantos números de telefone?
Novembro de 2003 Profa. Marilde Santos 11
Formas NormaisPrimeira Forma Normal
Atributos multivalorados
Nome
Idade DataNasc
Telefone
Nome
Idade DataNasc
fone1
fone2
fone3
Se forem 3 números
Novembro de 2003 Profa. Marilde Santos 12
Formas NormaisPrimeira Forma Normal
Atributos multivalorados
Nome
Idade DataNasc
Telefone
Nome
Idade DataNasc Nom
eTelefone
Se forem muitos números
Novembro de 2003 Profa. Marilde Santos 13
Formas NormaisDependências Funcionais
Se o valor de um conjunto de atributos A
permite descobrir o valor de um outro
conjunto B, dizemos que A determina
funcionalmente B, ou que B depende de A, e
denotamos:
A B
Novembro de 2003 Profa. Marilde Santos 14
Formas NormaisDependência Funcional Parcial
Se A for chave da relação e o valor de um
subconjunto de atributos de A permite
descobrir o valor de um outro conjunto B,
dizemos que B possui dependência
funcional parcial em relação a A.
Novembro de 2003 Profa. Marilde Santos 15
Formas NormaisAtributo Primo
Todo atributo que pertence a uma chave candidata é denominado primo.
O que é mesmo chave candidata?
Novembro de 2003 Profa. Marilde Santos 16
Formas NormaisSegunda Forma Normal
Uma relação está na 2a. forma normal
quando:
está na 1a. F.N. e;
todos os seus atributos que não são primos,
não dependem parcialmente de qualquer
chave candidata da relação.
Novembro de 2003 Profa. Marilde Santos 17
Formas NormaisSegunda Forma Normal
Número Sigla Número -Horas
Sala
Sigla Número-Horas
Número,Sigla Sala, Número-Horas
Novembro de 2003 Profa. Marilde Santos 18
Formas NormaisSegunda Forma Normal
Número Sigla Número -Horas
Sala
Número Sigla Sala Sigla Número-Horas
Novembro de 2003 Profa. Marilde Santos 19
Formas NormaisSegunda Forma Normal
Evita:
• Inconsistências devido a duplicidade de informações
• Perda de dados em operações de remoções / alteração na relação
Novembro de 2003 Profa. Marilde Santos 20
Formas NormaisSegunda Forma Normal
Número Sigla Número-Horas
Horário
DC12212
10:00
14:00
8:00
15:00
16:00
1
2
1
2
2
2
4
3
DC134
DC122
DC189DC189
Sigla Número-Horas
Número,Sigla Sala, Número-HorasValores Inconsistentes
Novembro de 2003 Profa. Marilde Santos 21
Formas NormaisSegunda Forma Normal
Número Sigla Número-Horas
Horário
DC12212
10:00
14:00
8:00
15:00
16:00
1
2
1
2
2
2
4
3
DC134
DC122
DC189DC189
Se não houver turmas de uma determinada disciplina em um semestre,
perde-se a informação sobre oNúmero de Horas!!!
Novembro de 2003 Profa. Marilde Santos 22
Formas NormaisTerceira Forma Normal
Uma relação está na 3a. Forma normal
quando: Está na 2a. F.N. E;
Todos os seus atributos não primos são
dependentes não transitivos de uma chave
candidata.Mas o que é
Dependência Funcional Transitiva?
Novembro de 2003 Profa. Marilde Santos 23
Formas NormaisTerceira Forma Normal
Seja a relação R(X, Y, A),A é transitivamente dependente de X, se existe Y tal que:
Mas o que é Dependência Funcional Transitiva?
X Y, Y não determina X YA A XY
Novembro de 2003 Profa. Marilde Santos 24
Formas NormaisTerceira Forma Normal
Número Sigla Sala Prédio
Número, Sigla Sala, Prédio
Sala Prédio
Novembro de 2003 Profa. Marilde Santos 25
Formas NormaisTerceira Forma Normal
Número Sigla Sala Prédio
Número, Sigla Sala Sala Prédio
Número Sigla Sala Sala Prédio
Novembro de 2003 Profa. Marilde Santos 26
Formas NormaisTerceira Forma Normal
Evita:
• inconsistências devido a duplicidade de informações
• perda de dados em operações de remoções / alteração na relação
Novembro de 2003 Profa. Marilde Santos 27
Formas NormaisTerceira Forma Normal
Valores Inconsistentes!!!!!
Número, Sigla Sala, Prédio
Sala Prédio
Número Sigla PrédioSala
DC10212
3
4
12
4
12
1
2
1
E1
C2
E1
C2
C2
DC155
DC102
DC104DC155
Novembro de 2003 Profa. Marilde Santos 28
Formas NormaisTerceira Forma Normal
Número, Sigla Sala, Prédio
Sala Prédio
Número Sigla PrédioSala
DC10212
3
4
12
4
12
1
2
1
E1
C2
E1
C2
C2
DC155
DC102
DC104DC155
Se não houver aula em uma determinada sala nessesemestre perde-se a informação sobre qual prédio
contém a tal sala.
Novembro de 2003 Profa. Marilde Santos 29
Formas NormaisTerceira Forma Normal
Uma relação está na 3a. Forma normal quando:
Está na 2a. F.N. e;
Todos os seus atributos não primos são dependentes não
transitivos de uma chave candidata.
Em outras palavras, uma relação está na 3FN se:
para toda dependência funcional X A de R,
X for superchave ou
A for atributo primo
Novembro de 2003 Profa. Marilde Santos 30
Formas NormaisForma Normal de Boyce-Codd
• Uma relação está na FNBC, se:
• Para toda dependência funcional X A de R,
• X for superchave Não adianta A ser primo!!!
Novembro de 2003 Profa. Marilde Santos 31
Formas NormaisForma Normal de Boyce-Codd
Apostila Disciplina
SO1
BD1
ED1
BD1
BD2
SO
BD
ED
BD
BD
Pr1 Central
Central
Sul
Id_Propried Nome_Região Lote Área
L54
500
Pr2
Pr3
Pr4
L2
L14
L23l
800
1000
1000Sul
Pr5
Pr6
Pr7
Norte
Central
1500
L414
L43l
1500
Leste L400
500
Id_propried Nome_região, Lote, ÁreaNome_região, Lote Id_propried, ÁreaÁrea Nome_região
Novembro de 2003 Profa. Marilde Santos 32
Formas NormaisForma Normal de Boyce-Codd
Nome_Região
Central
Sul
500
1000
Apostila Disciplina
SO1
BD1
ED1
BD1
BD2
SO
BD
ED
BD
BD
Pr1
Id_Propried Lote
L54
500
Pr2
Pr3
Pr4
L2
L14
L23l
500
1000
1000
Apostila Disciplina
SO1
BD1
ED1
BD1
BD2
SO
BD
ED
BD
BD
Pr1 Central
Central
Sul
Id_Propried Nome_Região Lote
L54
500
Pr2
Pr3
Pr4
L2
L14
L23l
500
1000
1000Sul
Área
ÁreaÁrea
Novembro de 2003 Profa. Marilde Santos 33
Formas NormaisDependências Funcionais Multivaloradas
O conceito baseia-se no fato de que, embora
não seja possível um conjunto de valores
determinar o valor de outro atributo, esse
conjunto consegue restringir os valores
possíveis para aquele atributo.
Novembro de 2003 Profa. Marilde Santos 34
Formas NormaisDependências Funcionais Multivaloradas
Se um conjunto de atributos A restringe os
valores possíveis para os atributos de um
outro conjunto B, diz-se que A multi-
determina funcionalmente B, ou que B é
multi-dependendente de A, e denota-se:
A B
Novembro de 2003 Profa. Marilde Santos 35
Formas NormaisDependências Funcionais Multivaloradas Uma dependência multivalorada X Y
especificada sobre a relação esquema R, onde X e Y são subconjuntos de R, especifica a seguinte restrição sobre qualquer r de R: se duas tuplas t1 e t2 existem em r tal que t1[x] = t2[x], então duas tuplas t3 e t4 deverão também existir em r com as seguintes propriedades, onde Z=(R-(X Z)):
• T3[X] = T4[X] = T1[X] = T2[X]
• T3[Y] = T1[Y] e T4[Y] = T2[Y]
• T3[Z] = T2[Z] e T4[Z] = T1[Z]
Novembro de 2003 Profa. Marilde Santos 36
Formas NormaisDependências Funcionais Multivaloradas
Orientando
Nome
t3[X] = t4[X] = t1[X] = t2[X]; t3[Y] = t1[Y] e t4[Y] = t2[Y]; t3[Z] = t2[Z] e t4[Z] = t1[Z].
MatériaNome
Alzira ES
BD
BD
ESAlzira
Alzira
Alzira Paulo
Sonia
Paulo
Sonia
Nome Matéria
Orientando
Alzira BD
ESAlzira
Pedro
Pedro
Novembro de 2003 Profa. Marilde Santos 37
Formas NormaisQuarta Forma Normal
Uma relação está na quarta forma normal quando:
dado um conjunto completo de dependências
funcionais multivaloradas não triviais para essa
relação:
Para todas as A B,
A é uma superchave da relação.DFM Trivial?!
O que é isso????
Novembro de 2003 Profa. Marilde Santos 38
Formas NormaisQuarta Forma Normal
A B é uma DFM Trivial se:B A ou AB=R
Novembro de 2003 Profa. Marilde Santos 39
Formas NormaisQuarta Forma Normal
Orientando
NomeMatériaNome
Carlos
SO
SO
BD
ESAlzira
Alzira
Carlos
Mario
Paulo
Paulo
Ana
Nome Matéria
Orientando
Alzira BD
ESAlzira
Sonia
Sonia
Nome não é superchave.
Novembro de 2003 Profa. Marilde Santos 40
Formas NormaisQuarta Forma Normal
Nome Matéria
Orientando
SOCarlos
Alzira ES
SO
BD
BD
ES
Carlos
Alzira
Alzira
Alzira
Mário
Ana
Paulo
Sonia
Paulo
Sonia
Sempre que dois conjuntos de atributos multivalorados independentes ocorrerem na mesma relação, será necessário repetir-se todos os valores de cada conjunto de atributos para cada valor possível do outro conjunto.
Novembro de 2003 Profa. Marilde Santos 41
Formas NormaisQuarta Forma Normal
Nome Matéria
Orientando
SOCarlos
Alzira ES
SO
BD
BD
ES
Carlos
Alzira
Alzira
Alzira
Mário
Ana
Paulo
Sonia
Paulo
Sonia
Alzira BD
ESAlzira
Pedro
Pedro
Novembro de 2003 Profa. Marilde Santos 42
Formas NormaisQuarta Forma Normal
Evita:
• Inconsistências devido à inclusão de uma nova tupla que tem valores diferentes das diversas ocorrências de um outro atributo multivalorado.
• Inconsistências em operações de remoção de tuplas, sendo que o produto cartesiano dos atributos multivalorados da relação possuem diferentes valores de um dos atributos em comparação com os valores de outro atributo.
Novembro de 2003 Profa. Marilde Santos 43
Formas NormaisQuarta Forma Normal
Nome Matéria Orientando
SOCarlos
Alzira ES
SO
BD
BD
ES
Carlos
Alzira
Alzira
Alzira
Mário
Ana
Paulo
Sonia
Paulo
Sonia
Alzira BD
ESAlzira
Pedro
Pedro
Nome Orientando Nome Matéria
Nome MatériaOrientandoNome
Novembro de 2003 Profa. Marilde Santos 44
Formas NormaisConsiderações Finais
Normalizar evita introduzir inconsistências quando
se alteram relações; porém obriga a execução de
custosas operações de junção para a consulta de
informações.
Novembro de 2003 Profa. Marilde Santos 45
Formas NormaisConsiderações Finais
A decisão deve ser tomada considerando-se o
compromisso entre se garantir a eliminação de
inconsistências na base, e eficiência de acesso.
Mas, e aí?!
Normalizar ou não Normalizar?
Eis a questão!
Novembro de 2003 Profa. Marilde Santos 46
Formas NormaisRegras de Inferência para DFs
1.Reflexiva. Se X Y, então X Y
2.Aumentativa. Se X Y, então XZ YZ
3.Transitiva. Se X Y e Y Z, então X Z
4.Decomposição/projeção. Se X YZ, então X Y e X Z
5.União/aditiva. Se X Y e X Z, então X YZ
6.Pseudotransitiva. Se X Y e WY Z, então WX Z
Novembro de 2003 Profa. Marilde Santos 47
Formas NormaisRegras de Inferência (DFMs)
1.Reflexiva. Se X Y, então X Y
2.Aumentativa. Se X Y, então XZ YZ
3.Transitiva. Se X Y e Y Z, então X Z
4.Complementação. Se X Y, então X ( R - (X Y) )
5.Aumentativa (DFM). Se X Y e W Z, então WX YZ
6.Transitiva (DFM). Se X Y e Y Z, então X (Z - Y)
7.Replicação. Se X Y, então X Y
8.Coalescência. Se X Y, e W com as seguintes
propriedades: a) WY é vazio; b)w Z e c) Y Z,
então: X Z