Banco de Dados I - Aula 09 - Normalização de Dados

Preview:

Citation preview

# Banco de Dados #Aula 05 - MODELAGEM DE DADOS

(Normalização de Dados e Formas Normais)

Prof. Leinylson Fontinele Pereira

Na aula anterior...

MODELAGEM DE DADOS# Modelo Lógico

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Introdução

11:14 3 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

O que vamos aprender?

MODELAGEM DE DADOS# Normalização de Dados

# Formas Normais

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Vamos começar?

11:14 5 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Normalização

11:14

Conceito introduzido em 1970 por E. F. Codd (1FN)

Processo matemático formal fundamentado na teoriados conjuntos

Aplica uma série de regras sobre as tabelas de umbanco de dados para verificar se estas foramcorretamente projetadas

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Normalização

11:14

Definição# Processo formal e passo a passo que examina os atributos de uma entidade, com o objetivo

de evitar anomalias observadas na inclusão, exclusão e alteração de registros.

Regra de ouro# No Modelo Relacional de Dados “não devemos misturar assuntos em uma mesma Tabela”

# Exemplo: na Tabela Clientes devemos colocar somente campos relacionados com o assuntoClientes. Não devemos misturar campos relacionados com outros assuntos, tais como Pedidos,Produtos, etc.

# Essa “Mistura de Assuntos” em uma mesma tabela acaba por gerar repetição desnecessáriados dados bem como inconsistência dos dados.

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Processo de Normalização

11:14

O processo de normalização passa pelas seguintes etapas:O documento ou arquivo a ser normalizado é representado na forma de uma tabela

não normalizada;

A tabela vai sendo decomposta em tabelas normalizadas ("bem projetadas"). A normalização dá-se em três passos principais, passando por três formas normais;

Uma forma normal é um conjunto de regras que uma tabela deve obedecer. Estas regras destinam-se a eliminar as redundâncias de dados.

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Primeira Forma Normal

11:14 9 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

1FN – Primeira Forma Normal

11:14

Uma relação estará na primeira forma normal (1FN), senão houver grupo de dados repetidos, isto é, se todos osvalores forem únicos.

Em outras palavras, a primeira forma normal não admiterepetições ou campos que tenha mais que um valor

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Passagem para a Primeira Forma Normal (1FN)

11:14

Procedimentos:

a) Identificar a chave primária da entidade

b) Identificar o grupo repetitivo e removê-lo da entidade

c) Criar uma nova entidade com a chave primária da entidadeanterior e o grupo repetitivo

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Passagem para a Primeira Forma Normal (1FN)

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Cria-se uma nova relação Turmas

1FN – Primeira Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

1FN – Primeira Forma Normal

11:14

Mesmo com o ajuste acima, a tabela ainda não está na primeira formanormal, pois há clientes com mais de um telefone e os valores estão em umamesma célula. Para normalizar será necessário criar uma nova tabela paraarmazenar os números dos telefones e o campo-chave da tabela cliente.

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

1FN – Primeira Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Segunda Forma Normal

11:14 16 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

2FN – Segunda Forma Normal

11:14

Uma relação está na 2FN se, e somente se, estiver na1FN e cada atributo não-chave for dependente da chaveprimária inteira, isto é, cada atributo não-chave nãopoderá ser dependente de apenas parte da chave.

No caso de tabelas com chave primária composta, se umatributo depende apenas de uma parte da chave primária,então esse atributo deve ser colocado em outra tabela.

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

2FN – Segunda Forma Normal

11:14

Criar uma nova relação Turma/Professor

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

2FN – Segunda Forma Normal

11:14

Procedimentos:a) Identificar os atributos que não são funcionalmentedependentes de toda a chave primária

b) Remover da entidade todos esses atributos identificadose criar uma nova entidade com eles

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

2FN – Segunda Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

2FN – Segunda Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Terceira Forma Normal

11:14 22 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

3FN – Terceira Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Uma tabela está na Terceira Forma Normal 3FN se elaestiver na 2FN e se nenhuma coluna não chave dependerde outra coluna não-chave.

Na terceira forma normal temos de eliminar aqueles camposque podem ser obtidos pela equação de outros campos damesma tabela.

3FN – Terceira Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

3FN – Terceira Forma Normal

11:14

Procedimentos:

a) Identificar todos os atributos que são funcionalmentedependentes de outros atributos não chave

b) Removê-los

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

3FN – Terceira Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

3FN – Terceira Forma Normal

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

É só isso?!

11:14 28 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Formas Normais Complementares

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Forma normal de Boyce/Codd (FNBC)

Quarta forma normal (4FN)

Quinta forma normal (5FN)

Vantagens

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Estruturas de dados mais estáveis Elimina a redundância Obtêm-se um modelo de dados mais natural e mais simples Evitam-se os efeitos laterais da alteração Evitam-se os efeitos laterais da inserção Evitam-se os efeitos laterais da remoção Facilita a exploração e manutenção de ficheiros

Desvantagens

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Favorece a proliferação no nº de tabelas

Favorece a fragmentação exagerada

Perigoso de seguir cegamente

Material: https://sites.google.com/site/leinylsonnassau

11:14

Aula baseada no material do:

Prof. Gustavo Zimmermann

Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Nesta aula aprendemos...

MODELAGEM DE DADOS# Normalização de Dados

# Formas Normais

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Na próxima aula veremos...

MODELAGEM DE DADOS# Modelo Físico

LINGUAGEM DE CONSULTA SQL# Comandos DDL

11:14 Banco de Dados II: Aula 05 - MODELAGEM DE DADOS (Normalização de Dados e Formas Normais)

Alguma Dúvida?

11:14

Até a próxima aula...

leinylson@gmail.com

Recommended