You are on page 1of 16

ndice

Introduo...................................................................................................... 2
Normalizao de Dados.................................................................................. 3
Verificao.................................................................................................. 3
Objetivo....................................................................................................... 3
Definio..................................................................................................... 3
Anomalias................................................................................................... 4
Ex:............................................................................................................ 4
Regras da normalizao................................................................................. 5
Dependncia Funcional............................................................................... 5
Estgios Da Normalizao (Formas Normais).................................................5
Primeira Forma Normal (1FN)......................................................................6
Verificao da Primeira Forma Normal.....................................................6
Ex:............................................................................................................ 7
Diagrama entidade relacionamento (DER)...............................................7
Segunda Forma Normal (2FN).....................................................................8
Verificao da Segunda Forma Normal....................................................9
EX:........................................................................................................... 9
DER:....................................................................................................... 10
Terceira Forma Normal (3FN).....................................................................10
EX:......................................................................................................... 11
DER:....................................................................................................... 12
Forma Normal de Boyce/Cood (BCFN).......................................................12
Ex:.......................................................................................................... 13
Quarta Forma Formal (4FN).......................................................................14
Quinta Forma Formal (5FN).......................................................................15
CONSEQUNCIAS DA NORMALIZAO.........................................................15
Desnormalizao....................................................................................... 15
Conclusao..................................................................................................... 16
Bibliografia................................................................................................... 17

Introduo
A normalizao de dados uma srie de passos que se seguem no projeto de um banco
de dados, que permitem um armazenamento consistente e um eficiente acesso aos dados
1

em bancos de dados relacionais. Esses passos reduzem a redundncia de dados e as


chances dos dados se tornarem inconsistentes.
No entanto, muitos SGBDs relacionais no tm separao suficiente entre o projeto
lgico da base de dados e a implementao fsica do banco de dados, e isso tem como
consequncia que as consultas feitas a um banco de dados totalmente normalizado tm
um mau desempenho. Nestes casos, usa-se por vezes a desnormalizao para melhorar o
desempenho, com o custo de menores garantias de consistncia. A desnormalizao o
processo de tentar otimizar o desempenho de leitura (ou consultas) de um banco de
dados, adicionando dados redundantes. Em alguns casos, desnormalizao ajuda a
encobrir as ineficincias inerentes a banco de dados relacionais. Pois a normalizao de
dados impe uma carga pesada sobre o armazenamento fsico dos dados, mesmo se for
bem ajustado para alto desempenho.

O conceito de normalizao de dados data de 1970 e mais uma contribuio do


memorvel Edgard F. Codd. uma tcnica empregada na organizao de um conjunto
de dados, procurando detetar e eliminar possveis redundncias. Esse conjunto
subdividido em outros que contem as mesmas informaes, porem sem a redundncia
inicialmente apresentada. um processo de refinamento das entidades do mundo real
envolvidas num sistema computadorizado.

Normalizao de Dados
Verificao
Aps a construo do modelo conceitual dos dados feita a transformao para um
modelo lgico (esquema relacional). O conjunto de tabelas obtido representa a estrutura
da informao de um modo natural e completo, mas, necessrio avaliar o grau de
redundncias existente.
Objetivo

A normalizao tem como objetivo modificar o conjunto de tabelas obtido, pela


transformao do modelo conceitual em um outro conjunto de tabelas equivalente,
menos redundante e mais estvel.

Definio
Normalizao De Dados Nada mais que o processo de organizar de forma eficiente
os dados em seu BD.
Existem dois pontos-chave neste processo: eliminar a redundncia de dados e assegurar
que as dependncias fazem realmente sentido.
Normalizao
um processo onde se aplica regras a todas as entidades (tabelas) do banco de dados, a
fim de evitar falhas no projeto, como redundncia de dados, mistura de diferentes
assuntos numa mesma entidade, entre outros problemas.
o processo de estruturao do esquema de um Banco de Dados Relacional que ir
remover a maioria das ambiguidades.
A normalizao no algo obrigatrio, mas sempre uma boa ideia, j que isto ir
beneficiar o desempenho e organizao dos dados.
E uma metodologia para projetos de BDs relacionais, uma vez que sugere uma
organizao de dados em tabelas. A normalizao e uma ferramenta para projetos
lgicos de BDs relacionais.
Atravs desse processo pode-se substituir um conjunto de entidades e relacionamentos
por um outro purificado em relao as anomalias de atualizao (incluso, atualizao
e excluso).
Redundncia armazenamento repetido de dados, que resultam em problemas de:
Manuteno alterao ou remoo de registos implica acessos a vrias partes
da
base, tornando-se difcil manter a coerncia;
Custo de espao de armazenamento
Desempenho as operaes de acesso aos discos so as que mais afetam o
desempenho
dos Sistemas.
Anomalias

Atributos multivalorados;
Dependncias parciais em relao a uma chave concatenada;
Repetio ou redundncia de dados desnecessrias;
Perdas acidentais de informaes;
Dificuldade na apresentao dos factos da realidade observada;
Dependncias transitivas entre atributos.

Ex:
3

Considere a tabela abaixo, contendo nome de alunos de uma academia e suas respetivas
atividades fsicas com seus respetivos valores.
Esta tabela representada pela seguinte relao:
Cliente (nome, atividade, taxa).

Suponha a excluso da tupla do aluno Jos, bem neste caso, perdemos, alm do nome do
aluno, as informaes referentes atividade Musculao, bem como seu valor.
Este problema denominado Anomalia de Eliminao.
Outro problema ocorre quando a academia implanta um novo curso e no podemos
inseri-lo at que um aluno tenha a disposio de faz-lo. Isto denominado Anomalia
de Insero.
Agora, note que Jud, esta grafado de forma errada na tupla do aluno Manoel. Se uma
busca for feita por Jud, s ir aparecer 1 aluno e no 2 alunos. Denominamos este
problema com Anomalia de Modificao.
A soluo para resolver esse tipo de situaes e a decomposio de uma relao em uma
ou varias relaes.

Regras da normalizao
A aplicao das regras da normalizao pressupe, inicialmente, uma situao dita no
normalizada (NN), ou seja, um conjunto de dados estruturados (tabelas misturadas), que
representam um documento, relatrio, etc. a partir dai se aplicam as formas normais.
Dependncia Funcional
A dependncia funcional talvez o conceito mais importante no projeto de esquemas
relacionais e pode ser definida como uma restrio entre dois conjuntos de atributos de
uma mesma entidade/relao. de grande importncia sua compreenso para entender
melhor normalizao de dados.
Dependncia funcional um relacionamento entre pelo menos dois atributos. 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.
4

Deve existir um atributo identificador para cada estncia do relacionamento tal que
exista uma relao de dependncia de atributos no chave.
Estgios Da Normalizao (Formas Normais)
Os estgios da normalizao referem-se como formas normais que vo desde a menos
restritiva (Primeira Forma Normal) para a mais restritiva (Quinta Forma Normal).
Geralmente, os Arquitetos de Banco de Dados no atenta para implementar nada alm
da Terceira Forma Normal, a Forma Normal de Boyce-Codd.

Primeira Forma Normal (1FN)


Todos os atributos de uma tabela devem ser atmicos (Simples, no divisveis), ou seja,
a tabela no deve conter atributos com mais de um valor. Para deixar nesta forma
normal, preciso identificar a chave primria da tabela, identificar a (s) coluna (s) que
tem dados repetidos e remov-los, criar uma nova tabela com a chave primria para
armazenar o dado repetido e, por fim, criar uma relao entre a tabela principal e a
tabela secundria. Por exemplo:
ENTIDADE (ID, NOME, ENDERECO, TELEFONE);
Nota-se que o atributo telefones se pode considerar multivalorado, nesse caso, retira-se
o atributo e cria-se uma nova tabela TELEFONE (ID_ENTIDADE, N_TELEFINE), o
atributo ID passa a ser chave estrangeira na tabela gerada.

Verificao da Primeira Forma Normal


5

- Identificao da chave primria da tabela.


- Identificao da coluna que contem dados repetidos e remov-las.
- Criao de uma nova tabela com chave primria para armazenamento do dado
repetido.
- Criar uma relao entre a tabela principal e a tabela secundria
1FN faz com que cada atributo (coluna) tenha uma relao atmica (trabalhar de forma
indivisvel), ou seja, cada coluna deve ter apenas um valor e cada registro tenha as
mesmas colunas.
Valores atmicos (simples, no divisveis):

Naturalidade, nome. Idade

Valores no atmicos:
Disciplina do aluno (matemtica, fsica) multivalorado,
ou seja, o aluno pode estar matriculado em mais de
uma disciplina.

No est na 1FN quando possuir atributos repetidos e multivalorados.


Ex:

Na tabela acima, podemos identificar que o campo Telefones, contm informaes de


mais de 1telefone do cliente. Nesse caso, teremos que criar uma outra tabela, para que
possamos armazenar corretamente os telefones dos clientes. Abaixo como as tabelas
devem ficar aps a normalizao.

Diagrama entidade relacionamento (DER)


Verificar se a entidade Cliente abaixo est na 1FN.Se no estiver, convert-la para a
1FN.

O Atributo data de contato pode ter mltiplos valores, portanto a entidade CLIENTE
no est na 1FN. Para transform-la para a 1FN vamos criar uma entidade adicional
CONTATO e relacion-la com um relacionamento 1:M no sentido CLIENTE CONTATO.
Segunda Forma Normal (2FN)
para estar na 2FN preciso estar na 1FN. Alm disso, todos os atributos no chaves da
tabela devem depender unicamente da chave primria (no podendo depender apenas de
parte dela). Para deixar na segunda forma normal, preciso identificar as colunas que
no so funcionalmente dependentes da chave primria da tabela e, em seguida,
remover essa coluna da tabela principal e criar uma nova tabela com esses dados.
Se o nome do curso j existe na tabela curso, ento no necessrio que ele exista na
tabela
de alunos. A segunda forma normal trata destas anomalias e evita que valores fiquem
em
redundncia no banco de dados.
Por exemplo:
7

ALUNOS_CURSOS(ID_ALUNO, ID_CURSO, NOTA, DESCRICAO_CURSO);

Nessa tabela, o atributo DESCRICAO_CURSO depende apenas da chave primria


ID_CURSO. Dessa forma, a tabela no est na 2FN. Para tanto, cria-se uma nova tabela
chamada CURSOS que tem como chave primria ID e atributo DESCRICAO retirando,
assim, o atributo DESCRICAO_CURSO da tabela ALUNOS_CURSOS.
ALUNOS_CURSOS(ID, ID_CURSO, NOTA)
CURSOS (ID, DESCRICAO)

Verificao da Segunda Forma Normal

Verificar se cada atributo dependente apenas do identificador da entidade.


Verificar se existe algum atributo dependente apenas de parte do identificador da
entidade.
Ao passar uma tabela para a 2FN necessrio considerar apenas tabelas que
tenham:
- chave primria composta;
- pelo menos um atributo no chave

EX:

Nesse exemplo, temos uma tabela que armazena dados de vendas de produtos. Para
aplicar a 2FN, temos que separar os dados dos produtos, em uma entidade que
contenham somente dados dos produtos, e nessa tabela de pedidos apenas dados
referentes aos pedidos. Segue exemplo abaixo aps aplicao da 2FN.

DER:
Verificar se entidade CURSO est normalizada, Normalizar a entidade abaixo:

Como a entidade no tem nenhum atributo com valores repetidos ela est na 1FN.
Entretanto os atributos data do pedido, nmero do pedido, quantidade pedida e valor
unitrio no so dependentes do identificador da entidade, portanto ela no est na 2FN.
Para normaliz-la devemos criar uma entidade auxiliar com os atributos no
dependentes do identificador.

Terceira Forma Normal (3FN)


para estar na 3FN, preciso estar na 2FN. Alm disso, os atributos no chave de uma
tabela devem ser mutuamente independentes e dependentes unicamente e
exclusivamente da chave primria (um atributo B funcionalmente dependente de A se,
e somente se, para cada valor de A s existe um valor de B). Para atingir essa forma
normal, preciso identificar as colunas que so funcionalmente dependentes das outras
colunas no chave e extra-las para outra tabela. Considere, como exemplo:
FUNCIONARIOS (ID, NOME, ID_CARGO, DESCRICAO_CARGO)
O atributo DESCRICAO_CARGO depende exclusivamente de ID_CARGO (atributo
no chave) e, portanto, deve-se criar uma nova tabela com esses atributos.
FUNCIONARIOS (ID, NOME, ID_CARGO)
CARGOS (ID_CARGO, DESCRICAO)

EX:
Um exemplo de uma tabela 2FN que no atende o critrio para 3FN :

A chave primria composta {Torneio, Ano}.


A tabela no est na terceira forma normal porque o atributo "data de nascimento do
vencedor" dependente transitivamente de {Torneio, Ano} via o atributo "Vencedor". O
10

fato da data de nascimento do vencedor no ser dependente do vencedor torna a tabela


vulnervel a inconsistncias lgicas, j que nada impediria de uma mesma pessoa
aparecer com datas de nascimento diferentes em dois registros.
Para atender a terceira forma normal, a mesma informao deveria ser dividida em duas
tabelas:

As duas tabelas acima esto na terceira forma normal.

DER:
Verificar se a entidade abaixo est na 3FN.

No existe nenhum atributo com valores repetidos, logo a entidade est na 1FN. Todos
os atributos no identificadores so dependentes do identificador da entidade, logo ela

11

est na 2FN. O atributo total do item dependente da quantidade pedida e do valor


unitrio, portanto a entidade no est na 3FN.
Para pass-la para a 3FN basta eliminar o atributo total do item que desnecessrio na
entidade.

Forma Normal de Boyce/Cood (BCFN)


Esta FN chamada de 3.5, pois Boyce e Codd adicionaram mais um requisito a 3FN:
1. Estar na 3FN (comum);
2. No existir dependncia funcional dentro da chave primria;
A BCFN um aperfeioamento da 3FN, destinada a lidar com situaes em que se
verifique a existncia de mais do que uma chave candidata e que duas chaves candidatas
possuam elementos comuns.
A forma normal Boyce/Codd foi desenvolvida com o objetivo de resolver algumas
situaes que no eram inicialmente cobertas pelas trs formas normais, em especial
quando havia varias chaves na entidade, formadas por mais de um atributo (chaves
compostas) e que ainda compartilham ao menos um atributo. Isso nos leva a concluir
que o problema se devia ao fato de ate agora as formas normais trataram de atributos
dependentes de chaves primarias.
Assim, para estar na FNBC, uma entidade precisa possuir somente atributos que so
chaves
candidatas.

Ex:
Vamos analisar o caso em que temos uma entidade formada pelos seguintes atributos:
CodAluno, CodCurso, CodTurma, CodProfessor.

Um mesmo professor pode ministrar aulas entre cursos e turmas diferentes. Sendo assim
podemos identificar trs chaves candidatas que so determinantes nessa entidade:
CODCURSO+CODTURMA, CODCURSO+CODPROFESSOR e
CODTURMA+CODPROFESSOR.
O atributo CODPROFESSOR parcialmente dependente do CODCURSO e de
CODTURMA, mas totalmente dependente da chave candidata composta
12

CODCURSO+CODTURMA.
Dessa forma a entidade deve ser desmembrada, resultando em duas: uma que contem os
atributos que descrevem o aluno em si, e outra cujos atributos designam um professor.

Quarta Forma Formal (4FN)


Segundo a definio, para uma entidade estar na quarta forma normal, primeiramente j
deve
estar na terceira, mas ao mesmo tempo no pode conter mais do que um atributo
multivalorado a dependncia multivalorada. Essa dependncia multivalorada uma
consequncia natural da 1F, uma vez que ela no permite conjunto de valores para um
atributo.
Essa caracterstica pode levar a seguinte situao: termos de repetir o valor de um dos
atributos com o valor de outro atributo, quando houver dois ou mais atributos
multivalorados independentes.
Para melhor entender, vamos supor que em nosso exemplo de sistema de pedido
tenhamos uma classificao dos produtos quanto a sua categoria (por exemplo, Material
Escolar, Informtica, Papelaria, Pintura, etc.). Cada produto ento associado a uma
categoria e devido ao fato de os produtos pertencerem a um pedido, possvel estender
essa associao ate os fornecedores, para facilitar, por exemplo, a identificao de
13

fornecedor que vendem produtos de uma determinada categoria. Dessa maneira


teramos algo parecido com o mostrado a seguir:

Do jeito que est, embora a normalizao se encontre na 3FN, ainda apresenta uma
dependncia multivalorada entre os pares de atributos Cdigo Categoria/Cdigo
Produto e Cdigo Categoria/Cdigo Fornecedor. O que devemos fazer criar duas
entidades nas quais o atributo comum seja Cdigo Categoria:

Quinta Forma Formal (5FN)


A quinta e ultima forma normal diz que, estando na quarta forma, uma entidade estar
na quinta se no for possvel reconstruir as informaes originais a partir de registros
menores, resultado da decomposio de um registro principal. Isso ocorre quando temos
um relacionamento mltiplo (ternrio, quartanrio, etc.) num sistema. Apesar de existir
raramente utilizada.
Esta forma normal trata especificamente dos casos de perda de informao, quando da
decomposio de relacionamentos mltiplos.
A 5FN trata de casos bastante particulares, que ocorrem na modelagem de dados, que
so os relacionamentos mltiplos (ternrios, quaternrios e n-rios).
Ela fala que um registro est na sua 5FN, quando o contedo deste mesmo registro no
puder ser reconstrudo (juno) a partir de outros registros menores, extrados deste
registro principal. Ou seja, se ao particionar um registro, e sua juno posterior no

14

conseguir recuperar as informaes contidas no registro original, ento este registro est
na 5FN.

CONSEQUNCIAS DA NORMALIZAO

Compromisso, bom senso, avaliao do desempenho do sistema e, eventualmente,


necessidade de desnormalizar
Desnormalizao
O SGBD para alm de implementar o modelo de dados de um universo, deve considerar
alguns aspectos que permitem melhorias na utilizao do sistema; Trata-se de
estabelecer um compromisso entre a flexibilidade do sistema e a viabilidade da sua
utilizao; Pretende-se obter um esquema equilibrado, que no ponha em risco a
integridade da BD, mas que, simultaneamente, tenha um desempenho razovel. Por essa
razo, na maioria dos casos, o processo de normalizao para na 3FN.

Conclusao
Com esta pesquisa conclui que com a normalizao ajuda a evitar as redundncias.
A Normalizao tem como objetivo avaliar a qualidade do Desenho de Tabelas e
transform-lo (em caso de necessidade) num Desenho (Conjunto de Tabelas)
equivalente, menos redundante e mais estvel, vimos tambm as formas normais (FN)
que so as regras hierrquicas para que para normalizarmos o nosso Banco de Dados.

15

Bibliografia
http://infernatica.blogspot.com/2007/09/normalizao-de-banco-de-dados.html
http://pt.wikipedia.org/wiki/Normaliza%C3%A7%C3%A3o_de_dados
http://juliobattisti.com.br/artigos/office/modelorelacional_p4.asp
https://aquila1.iseg.ulisboa.pt/aquila/getFile.do?fileId=19012&method=getFile
http://www.blogdati.com.br/index.php/2010/03/normalizacao-em-banco-de-dados/
http://www.fernandolobo.info/bd/slides/a09-papel.pdf
apostila banco de dados i.

16