A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Utilização por terceiros autorizada com citação da fonte.

Cópias: 2
George Hamilton Slide Title Asterio K. Tanaka BANCO DE DADOS Dependências funcionais e Normalização de Bancos de Dados Relacionais (Material complementar.

George Hamilton Slide Title Asterio K. Tanaka BANCO DE DADOS Dependências funcionais e Normalização de Bancos de Dados Relacionais (Material complementar.

Apresentações semelhantes


Apresentação em tema: "Utilização por terceiros autorizada com citação da fonte."— Transcrição da apresentação:

1 Utilização por terceiros autorizada com citação da fonte.
BANCO DE DADOS Dependências funcionais e Normalização de Bancos de Dados Relacionais (Material complementar aos Capítulos de Elmasri-Navathe 2000) Asterio K. Tanaka Utilização por terceiros autorizada com citação da fonte.

2 Projeto de Bancos de Dados
Requisitos de Dados Projeto Conceitual Lógico Físico Esquema Conceitual Esquema Físico Esquema Lógico Modelagem dos requisitos de dados através de diagramas de Entidades e Relacionamentos (DER) ou de Classes e Objetos (DCO) Mapeamento do esquema conceitual para o modelo de dados do SGBD escolhido, através de diagrama de estruturas de dados (DED) Mapeamento do esquema lógico para os tipos de dados e restrições de integridade do SGBD escolhido; criação de visões e índices.

3 Normalização Normalização de dados : processo de decomposição de esquemas para evitar anomalias de atualização (na inserção, exclusão, modificação de dados). “Bom design” evita redundância de dados e anomalias de atualização. Mecanismo formal para analisar esquemas de relações baseado nas suas chaves e nas dependências funcionais entre seus atributos. Antes da modelagem conceitual, normalização era um método de projeto de relações, a partir de uma RELAÇÃO UNIVERSAL. Uma modelagem conceitual bem feita resulta naturalmente em esquemas normalizados, portanto normalização é conseqüência, ou seja, um “bom design” é conseqüência de uma boa modelagem.

4 Redundância de Dados e Anomalias de Atualização
FUNC-DEPT CPF Nome-Func Data-Nasc Endereço Num-Dept Nome-Dept Gerente-Dept FUNC-PROJ CPF Num-Proj Horas Nome-Func Nome-Proj Local-Proj Redundância nas tuplas: Num-Dept, Nome-Dept, Gerente-Dept são repetidos para todo funcionário que trabalha naquele departamento. Idem para Nome-Func, Nome-Proj, Local-Proj para cada funcionário alocado em determinado projeto. Anomalias de atualização: Inserção: incluir um novo funcionário implica em incluir dados de departamento our deixar nulos; como incluir um novo departamento, se CPF é chave primária Exclusão: ao excluir um funcinário que seja o único funcinário de um departamento, estaremos perdendo dados sobre o departamento Modificação: ao mudarmos um dado de um departamento (por exemplo, o gerente), todas as tuplas de funcionários daquele departamento terão que ser modificadas.

5 Projeto de BD por Normalização
CPF Nome Emp Num Dept Nome Dept Num Proj Nome Proj Horas relação universal (“tabelão” com todos os dados) Normalização Esquema com relações normalizadas CPF Nome Emp Num Dept Num Dept Nome Dept CPF Num Proj Horas Num Proj Nome Proj

6 Primeira Forma Normal (1FN)
É parte da definição formal de uma relação; foi definida para não permitir atributos multivalorados, atributos compostos e suas combinações. A 1FN garante a propriedade de fechamento da Álgebra Relacional. Uma relação está em 1FN se e somente se todos os seus atributos contêm apenas valores atômicos (simples, indivisíveis).

7 atributo multivalorado
DEPARTAMENTO Nome Núm Gerente Data-Inicio Localização Pesq Adm Sede 5 4 1 22Mai88 01Jan92 19Jun91 Lins, Bauru, Santos Campinas Santos Relação que não está em 1FN Num-Dept Localização LOCAL_DEPT 1 4 5 Santos Campinas Lins Bauru Nome Núm Gerente Data-Inicio DEPARTAMENTO Pesq Adm Sede 22Mai88 01Jan92 19Jun91 Relações em 1FN sem redundância

8 Relação que não está em 1FN
atributo composto TRABALHA_EM CPF-Emp Num-Proj Horas TRABALHA_EM 1 2 3 10 20 30 32,5 7,5 40,0 20,0 10,0 30,0 35,0 5,0 15,0 nulo Relação em 1FN CPF-Emp Projetos Num-Proj Horas 1 2 3 10 20 30 32,5 7,5 40,0 20,0 10,0 30,0 35,0 5,0 15,0 nulo Relação que não está em 1FN

9 Dependência Funcional
X  Y Os valores dos atributos do conjunto X determinam os valores dos atributos do conjunto Y ou, inversamente, os valores dos atributos do conjunto Y dependem funcionalmente dos valores dos atributos do conjunto X. CPF Num-Proj Horas Nome-Emp Nome-Proj Local-Proj EMP-PROJ df1 df2 df3 df1 : {CPF, Num-Proj}  {Horas} df2 : {CPF}  {Nome-Emp} df3 : {Num-Proj}  {Nome-Proj, Local-Proj} DF deve ser explicitamente definida por alguém que conheça a semântica dos atributos de uma relação. Não basta deduzir a DF pelas instâncias.

10 Regras de Inferência para Dependências Funcionais
Regra reflexiva : Se X Ê Y, então X ® Y. Regra de aumento : {X ® Y} Þ XZ ® Y. Regra transitiva : {X ® Y, Y ® Z} Þ X ® Z. Regra projetiva ou de decomposição : {X ® YZ} Þ X ® Y. Regra aditiva ou de união : {X ® Y, X ® Z} Þ X ® YZ. Regra pseudo-transitiva : {X ® Y, WY ® Z} Þ WX ® Z.

11 Segunda Forma Normal (2FN)
Uma relação está em 2FN se e somente se estiver em 1FN e todo atributo não-primo (isto é, que não seja membro de uma chave) for totalmente dependente de qualquer chave.

12 Relação em 1FN que não está em 2FN
EMP-PROJ CPF Num-Proj Horas Nome-Emp Nome-Proj Local-Proj df1 df2 df3 CPF Num-Proj Horas CPF Nome-Emp Num-Proj Nome-Proj Local-Proj df1 TRABALHA_EM EMPREGADO PROJETO df2 df3 Relações em 2FN

13 Terceira Forma Normal (3FN)
Uma relação está em 3FN se e somente se estiver em 2FN e nenhum atributo não-primo (isto é, que não seja membro de uma chave) for transitivamente dependente da chave primária. Em outras palavras, para toda df X  A, uma das duas condições seguintes devem valer: X é uma superchave ou A é membro de uma chave candidata

14 Relação em 2FN que não está em 3FN
EMP-DEPT CPF Nome-Emp Data-Nasc Endereço Num-Dept Nome-Dept Ger-Dept df1 df2 CPF Nome-Emp Data-Nasc Endereço Num-Dept df1 Num-Dept Nome-Dept Ger-Dept df2 EMPREGADO DEPARTAMENTO Relações em 3FN

15 Forma Normal de Boyce-Codd (FNBC)
É uma forma mais restritiva de 3FN, isto é toda relação em FNBC está também em 3FN; entretanto, uma relação em 3FN não está necessariamente em FNBC. Uma relação está em FNBC se para toda DF X  Z, X é uma super-chave.

16 Relação em 3FN que não está em FNBC
AULA Aluno Disciplina Professor df1 df2 df2 : {Professor} Disciplina} {Professor} não é uma superchave. AULA Aluno Disciplina Professor Carlos Química Ana Carlos Física Antonio Marta Química Ana Marta Português Maria João Português Manoel Anomalia de exclusão : Se Carlos sair da aula de Física, não teremos nenhum registro de que Antonio leciona Física.

17 Note, entretanto, que a dependência funcional
Relações em FNBC R1 R2 Aluno Professor Professor Disciplina Carlos Ana Carlos Antonio Marta Ana Marta Maria João Manoel Ana Química Antonio Física Maria Português Manoel Português Note, entretanto, que a dependência funcional df1 : {Aluno, Disciplina} Professor foi perdida na decomposição. Considere, por exemplo, a inserção de (Marta, Manoel) em R1.

18 Decomposição/Junção sem Perda
Conclusão: alguns esquemas não podem ser normalizados em FNBC e ao mesmo tempo preservar todas as dfs. Solução: redundância parcial. Aluno Disciplina Professor Carlos Química Ana Carlos Física Antonio Marta Química Ana Marta Português Maria João Português Manoel AULA Ana Química Antonio Física Maria Português Manoel Português Professor Disciplina R2 Relações em FNBC, com redundância parcial e todas as dependências funcionais preservadas

19 Quarta Forma Normal Baseada em dependências multivaloradas (DMVs)
Quarta forma normal (4FN) Uma relação R está em 4FN se e somente se estiver em FNBC e, caso exista alguma DMV X --->> Y, a DMV é trivial (i.e., Y  X ou X  Y = R) ou X é uma superchave de R.

20 Nome-Emp Nome-Proj Nome-Depend
EMPREGADO Nome-Emp Nome-Proj Nome-Depend Prado X João Prado Y Ana Prado X Ana Prado Y João Borba W José Borba X José Borba Y José Borba Z José Borba W Joana Borba X Joana Borba Y Joana Borba Z Joana Borba W Beto Borba X Beto Borba Y Beto Borba Z Beto Relação EMPREGADO não está em 4FN. 2 DMVs não triviais: Nome-Emp --->> Nome-Proj Nome-Emp --->> Nome-Depend Nome-Emp Nome-Proj Nome-Emp Nome-Depend Prado X Prado Y Borba W Borba X Borba Y Borba Z Prado João Prado Ana Borba José Borba Joana Borba Beto EMP-PROJ EMP-DEP As relações EMP-PROJ e EMP-DEP estão em 4FN

21 Outras Formas Normais Tipos adicionais de dependências.
dependências de junção e de inclusão, que levam a formas normais mais restritas (Quinta Forma Normal, Forma Normal de Domínio-Chave). A utilidade prática destas formas normais é limitada, porque num banco de dados real com muitos atributos, é muito difícil (e praticamente irrelevante) descobrir tais dependências e restrições.

22 Normalização como Ferramenta para Validação da Qualidade de um Esquema
As formas normais até FNBC são baseadas em dependências funcionais, exceto a 1FN, que faz parte da definição do modelo relacional. O design conceitual baseado nos modelos ER ou OO tende naturalmente a produzir esquemas normalizados, a menos da 1FN. A separação de conceitos é o resultado natural do design conceitual bem feito. Na prática, esquemas que violam a normalização são exemplos de esquemas mal projetados.


Carregar ppt "Utilização por terceiros autorizada com citação da fonte."

Apresentações semelhantes


Anúncios Google