Escolar Documentos
Profissional Documentos
Cultura Documentos
Informao
Normalizao
Contedo
Motivao
Normalizao
Dependncia Funcional
Formas Normais
1FN
2FN
3FN
Boyce and Codd
4FN
5FN
Motivao
O processo chamado de Normalizao uma das
atividades do projeto lgico de banco de dados
Seu objetivo assegurar que as relaes surgidas
durante o projeto conceitual e lgico possam
atender perfeitamente semntica da aplicao
(sistema) em questo
Motivao
Antes de definir de maneira mais formal o que
Normalizao, vamos observar um pequeno
exemplo.
Identidade
9924
9924
9924
9924
Nome
Carlos
Carlos
Carlos
Carlos
Endereo
Rua
Rua
Rua
Rua
F
F
F
F
Habilidade
Futebol
Basquete
Tnis
Atletismo
Motivao
A mesma sofre do que chamamos de anomalias de
atualizao: Modificao, Insero, Remoo
O que acontece se um jogador muda de endereo ?
O que acontece se precisamos cadastrar uma nova
habilidade ?
O que acontece se removemos um jogador e esse
o ltimo relacionado a determinada habilidade ?
Motivao
O que seria ideal ?
Identidade
9924
Nome
Carlos
Endereo
Rua F
Habilidade
Futebol,
Basquete,
Tnis,
Atletismo
Motivao
O que pode ser feito no modelo relacional ?
Identidade
9924
Nome
Carlos
Identidade
9924
9924
9924
9924
Endereo
Rua F
Habilidade
Futebol
Basquete
Tnis
Atletismo
Normalizao
O que acabamos de fazer foi normalizar a Relao
original de maneira que a mesma no apresente
redundncias que venham a causar anomalias de
atualizao
Normalizao o processo de refinamento de um
projeto de banco de dados visando eliminar
anomalias e inconsistncias.
Regras de Normalizao entram em conflito com o
desempenho
Este material no pode ser copiado sem autorizao
Normalizao
Um bom projeto conceitual (um bom diagrama
Entidade-Relacionamento) e um bom mapeamento
para o modelo relacional so suficientes para
normalizar um esquema relacional
Nesse contexto, a normalizao utilizada somente
para validar o projeto relacional
Normalizao
Formas Normais
Regras gerais para projetar esquemas relacionais.
Obedece uma Hierarquia.
O processo de Normalizao foi proposto inicialmente por
Codd. 1FN , 2FN e 3FN.
Uma definio mais forte da 3FN foi dada por Boyce e
Codd: Boyce-Codd Normal Form.
Ron Fagin definiu posteriormente uma 4FN e uma 5FN
raramente utilizadas.
Normalizao
As Formas Normais so baseadas em dois
conceitos principais:
Chaves e Dependncia Funcional
Dependncia Funcional
Sendo A e B dois grupos de atributos de uma
relao R, diz-se que B funcionalmente
dependente (ou dependente funcional) de A se,
sempre que duas tuplas de R coincidirem quanto
aos valores assumidos pelos atributos de A, elas
necessariamente tambm coincidem quanto aos
valores assumidos pelos atributos de B. (A
denominado determinante, neste caso)
Denota-se: A B (A determina B)
Dependncia Funcional
Exemplo:
Funcionario(#Matricula, CPF, Nome,
Endereo, Departamento)
#Matricula CPF
#Matricula Nome
#Matricula Endereo
#Matricula Departamento
Dependncia Funcional
Temos tambm:
CPF Matricula
CPF Nome
CPF Endereo
CPF Departamento
Dependncia Funcional
Dependncia Funcional Total
O grupo de atributos B da relao R dito ser
dependente funcional total do grupo de atributos A, se
dependente funcional de todos os atributos que compem
A, mas no funcionalmente de nenhum subconjunto C
de A.
Dependncia Funcional
Exemplo:
Inscrio (#Cd_Estudante, #Cd_Curso,
Data_Inscrio)
(#Cd_Estudante,#Cd_Curso) Data_Inscrio
Data_Inscrio depende totalmente do conjunto
(#Cd_Estudante,#Cd_Curso)
Dependncia Funcional
Dependncia Funcional Parcial
Estoque(#Cd_Pea, #Cd_Depsito, Quantidade,
Nome_Depsito)
(#Cd_Pea,#Cd_Depsito) Nome_Depsito
Nome_Depsito no dependente funcional total
do conjunto (#Cd_Pea,#Cd_Depsito)
Dependncia Funcional
Dependncia Funcional Transitiva
Sendo A, B e C trs grupos de atributos, diz-se
que h dependncia transitiva entre C e A se B
dependente funcional de A, e C dependente
funcional de B.
ABC
Dependncia Funcional
Exemplo:
Curso(#C, Nm_Curso, Id_Professor,
Sala_Professor)
#C Nm_Curso, Id_Professor, Sala_Professor
Id_Professor Sala_Professor
Formas Normais
Nm_Disciplina
Matemtica
Portugus
Histria
Matricula_Professor
PO1, PO2, PO3
P02, P05
P03, P08
Formas Normais
Soluo
Extrair a dependncia parcial
#Cd_Disciplina Nm_Disciplina
para uma outra Relao
Disciplina(#Cd_Disciplina, Nm_Disciplina)
Notas(#@Cd_Disciplina, #Cd_Estudante, Nota)
Formas Normais
Soluo
Extrair a dependncia transitiva
#Cd_Departamento Local_Departamento
para uma outra Relao
(#Cd_Departamento, Local_Departamento)
(#Cd_Empregado, Nm_Empregado,
@Cd_Departamento)
Formas Normais
R(#Curso,#Estudante, Tutor)
Considere tambm as seguintes restries:
Cada curso pode ter n tutores
Cada tutor est associado a um nico curso
Para cada curso, um estudante possui um tutor
Instncia da Relao R
Curso
C1
C1
C2
C2
C2
Estudante
Andre
Carlos
Andre
Joao
Alberto
Tutor
Patricia
Carla
Moema
Tereza
Moema
Formas Normais
Professor
Andr
Andr
Joo
Ricardo
Pedro
Livro
L1
L2
L3
L5
L5
Formas Normais
5 Forma Normal (5FN)
A quinta forma normal lida com cenrios (casos) nos
quais a informao pode ser reconstruda a partir de
pequenas informaes armazenadas com menos
redundncia
Uma relao est na quinta forma normal quando uma
informao da mesma no pode ser reconstruda a partir
de quantidades menores de informaes
Companhia
Ford
GM
Produto
carro
caminho
Companhia
Ford
Ford
GM
GM
Ford
Produto
carro
caminho
carro
caminho
carro
Prof Ricardo Ariel Correa Rabelo
Companhia
Ford
GM
Ford
Produto
carro
caminho
carro
caminho
Vendedor
Smith
Smith
Jones
Produto
carro
caminho
carro