Normalização
• Normalização: “Técnicas de racionalização das estruturas de dados de um sistema, eliminando redundâncias, problemas de manipulação e armazenamento.” • A normalização é a ferramenta para auxiliar no projeto físico, porém só é suficiente teoricamente. Na prática provou-se que a normalização não é suficiente.
• A teoria da normalização serve para verificar se os esquemas do projeto físico satisfazem algumas características básicas. Se tornou muito mais um método de verificação, do que de definição como foi proposto.
1
Bancos de Dados I - PUC Minas São Gabriel - Prof. Claudiney Vander Ramos
Capítulo 4 - Normalização
• NORMALIZAÇÃO é um processo através do qual esquemas de relação que não sejam “satisfatórios” são decompostos em esquemas menores que satisfaçam certas propriedades desejáveis.
• Medidas de qualidade para o projeto de um esquema de relação: 1 – Correta representação semântica
2 – Redução de valores redundantes
3 – Redução de valores nulos
4 – Não geração de tuplas ilegítimas
2
Bancos de Dados I - PUC Minas São Gabriel - Prof. Claudiney Vander Ramos
Capítulo 4 - Normalização
• Quando ocorre uma decomposição de tabelas, por exemplo:
R1.1 (A1, A2, A3)
R1 (A1, A2, A3, A4)
R1.2 (A1, A4)
• Se for recompor R1.1 e R1.2 o resultado desejado seria a tabela R1, mas nem sempre isto é conseguido. Podem ser geradas tuplas ilegítimas nesta recomposição. A decomposição deve ser feita de forma muito cuidadosa.
• O atributo “pivô” da decomposição deve ser chave de uma das tabelas envolvidas ou de ambas.
3
Bancos de Dados I - PUC Minas São Gabriel - Prof. Claudiney Vander Ramos
Capítulo 4 - Normalização
• Diretrizes do projeto:
– D1 – Projete um esquema de relação de tal forma que seja fácil explicar o seu significado semântico.
– D2 – Projete um esquema de relação de forma a evitar anomalias de atualização.
– D3 – Sempre que possível, projete um esquema de relação de forma a evitar