VITOR MANUEL GOMES ROQUE
Escola Superior de Turismo e Hotelaria Instituto Politécnico da Guarda
3
A NORMALIZAÇÃO de uma BD é um processo que
consiste em estruturar as tabelas e os atributos
na forma mais adequada, do ponto de vista das
operações a executar
sobre a informação
registada na BD, tendo em vista eliminar
redundâncias desnecessárias e evitar problemas
com a inserção, eliminação e actualização dos
dados.
O Processo de Normalização é efectuado seguindo
um conjunto de regras designadas por formas
normais:
1ª Forma Normal (1FN)
2ª Forma Normal (2FN)
3ª Forma Normal (3FN)
FNBC (Boyce-Codd )
4ª Forma Normal (4FN)
=> dependências funcionais
=> dependência multivalor
5
5FN
4FN
FNBC
3FN
2FN
1FN
Etapas da Normalização
•
Benefícios da Normalização:
–
Estruturação da informação e melhoria da qualidade da
representação relacional.
–
Eliminação das possibilidades de ocorrência de anomalias
na manipulação dos dados (põe em risco a integridade).
–
Economia de espaço de armazenamento e custos de
manipulação.
•
Principal limitação:
–
Fragmentação de informação e suas consequências ao
nível do desempenho, tempo de processamento, etc.
7
•
Em geral o Processo de Normalização
consiste em
:
– definem-se as entidades de todos os atributos considerados relevantes;
– analizam-se as relações e dependências entre os atributos de cada entidade (tabela) e compara-se a estrutura analisada com as referidas formas normais;
– sempre que uma entidade ou tabela apresentar alguma característica não conforme a uma forma normal, reestruturam-se os atributos ou separam-se da entidade original, para formar com eles uma nova entidade ou tabela;
– repete-se o processo até que todas as entidades (tabelas) estejam na forma normal pretendida.
Todas as tabelas que estão na 2FN (2ª Forma
Normal) estão também na 1FN, mas uma tabela
pode estar na 1FN, mas não obedecer aos
requisitos exigidos pela 2FN.
A 3FN (3ª Forma Normal) constitui um estado
geralmente considerado “satisfatório” no processo de
normalização. Todas as tabelas que estão na 3FN,
obedecem igualmente ao requisitos definidos para a
1FN e 2FN.
9
•
Na prática, os procedimentos de normalização
consideram-se geralmente satisfatórios consideram-se as tabelas atingirem a 3FN,
pois o modelo original apenas previa a existência de três
formas normais, a 1FN, 2FN e 3FN.
•
Desenvolvimentos
posteriores
do
modelo
levaram
à
conclusão de que existem situações em que a 3FN não
constitui o estado final “ideal” a que as tabelas de uma base
de dados devem obedecer.
•
Nesse sentido, foram criadas outras especificações que
ficaram conhecidas pelas seguintes designações:
– forma normal de Boyce/Codd
– quarta forma normal (4FN)
– quinta forma normal (5FN)
A FNBoyce/Codd constitui um refinamento da 3FN que
contempla certas situações que não são consideradas nas
especificações da 3FN. Todas as tabelas na FNBoyce/Codd
estão também na 3FN, mas a reciproca não é verdadeira.
Em certas circunstâncias, a FNBoyce/Codd não é inteiramente
satisfatória. A 4FN define requisitos de nível mais elevado no
processo de nornalização de tabelas.
A 4FN e 5FN definem os níveis mais elevados no processo de
normalização de tabelas
Dependência Funcional
Definição: Numa relação existe uma dependência funcional entre dois conjuntos X e Y de atributos, se uma instância de valores dos atributos de X determina univocamente uma instância de valores dos atributos de Y. Representa-se por: X Y (X denomina-se de Determinante)
13
•
Condições para que uma tabela se encontre na1FN:
–
Uma tabela encontra-se na primeira forma normal (1FN)
se todos os seus atributos estiverem definidos em
dominios que contenham apenas valores atómicos.
Os dominios devem ser formados por valores elementares e não por conjuntos de conjuntos. Esta é aliás uma condição imposta para que uma tabela seja considerada como uma tabela do modelo relacional. Um atributo só pode admitir valores elementares e não conjuntos de valores.
nota
1ª Forma Normal (1FN)
Definição: Uma relação encontra-se na primeira forma normal se: Os Atributos chave estão definidos
Não existem grupos repetitivos
Todos os atributos dependem funcionalmente da chave primária Grupos Repetitivos (Notação de Gare and Sarson)
Nº Nome CodD Disciplina Curso
15
1ª Forma Normal (1FN)
Solução: Após identificação da chave da relação, remover os atributos que formam os grupos repetitivos
17
2ª Forma Normal (2FN)
Definição: Uma relação encontra-se na segunda forma normal se: Está na 1FN
Não inclui dependências parciais (o determinante é um subconjunto da chave primária)
2ª Forma Normal (2FN)
Solução: Removemos os atributos parcialmente dependentes, juntamente com uma cópia do determinante e formamos uma nova relação.
3ª Forma Normal (3FN)
Definição: Uma relação encontra-se na terceira forma normal se: Está na 2FN.
Não contém dependências transitivas.
Dependência Transitiva: Se numa relação tivermos A B e B C então diz-se que C depende transitivamente de A, através de B.
21
3ª Forma Normal (3FN)
Solução: Removemos as dependências transitivas. Para tal removemos os atributos transitivamente dependentes dessa relação, juntamente com uma cópia do determinante, formando uma nova relação.
EXERCICIO:
Forma Normal de Boyce Codd (FNBC)
Definição: Uma relação encontra-se na forma normal de Boyce-Cood se qualquer determinante é uma chave candidata.
Dependências Funcionais: Disciplina, Aluno Docente, Nota Aluno, Docente Disciplina, Nota Docente Disciplina
Cada disciplina é leccionada por dois docentes, mas um docente só pode leccionar uma única disciplina.
25
Forma Normal de Boyce Codd (FNBC)
Solução: Decompor a relação, separando os atributos que dependem daqueles que não são chave candidata
notas
27
Dependência Multivalor
Definição: Numa relação R(X,Y,Z) existe uma dependência multivalor entre X e Y (X --» Y) se para cada par de tuplos de R contendo os mesmos valores de X, existe em R um par de tuplos correspondentes à troca dos valores de Y no par original
Nº --» Telefone Nº --» Email
4ª Forma Normal (4FN)
Definição: Uma relação na FNBC encontra-se na quarta forma normal se não existem dependências multivalor.
Solução: Criar novas relações, separando os atributos multidependentes.
Só em situações muito especificas é que uma relação na FNBC não está na 4FN. Para detectar essas situações teremos de compreender o significado da relação
5ª Forma Normal (5FN)
Definição: Uma relação encontra-se na quinta forma normal se:
Está na FNBC;
Não existem dependências de junção.
– Verificam-se em situações muito raras e difíceis de detectar! – Exige que se compreenda bem a semântica da relação.
Exemplo:
Se um representante representa um conjunto de produtos e possui um conjunto de clientes, então este vende esses produtos a esses clientes.
31
Agora estão na 4FN
Mas e se existissem as seguintes restrições: A loja J&F, Lda não vende talheres nem meias. A loja YSL não vende cintos.
33 Esta relação já está na 4FN, mas não na 5FN!
Solução: neste caso, dividir em 3 relações, sem que haja perda.
35
Aplicar normalização até onde?
1FN 2FN 3FN FNBC 4FN 5FN menos relações mais redundância mais relações menos redundância PONTO DE EQUILIBRIO
A proliferação de relações pode ter consequências ao nível do desempenho global do sistema.
É necessário estabelecer um compromisso.
Na prática o processo de normalização pára na 3FN ou FNBC.
•
Resolva os seguintes problemas:
–
Considerar a possibilidade de um aluno estar matriculado
em várias unidades curriculares.
–
Considerar a possibilidade de um árbitro poder arbitrar
jogos
37