©Silberschatz, Korth and Sudarshan (modificado)1Database System Concepts result := {R}; done := false; calcular F+; while (not done) do if (há um esquema.

Slides:



Advertisements
Apresentações semelhantes
Sistemas especialistas
Advertisements

Resolução de um Problema
Normalização.
Exercícios PAA- Grafos
Introdução Arquitectura com unidade de controlo uniciclo.
Array aggregates type columns is range 1 to 4; type row is array (columns) of std_logic; variable r1 : row := ('1', '0', '1', '1'); variable r2 : row :=
Pesquisa em profundidade
A10-1 Definição: Um ponto x*  W diz-se um mínimo relativo ou ponto
Recursividade e Iteração Factorial, Fibonacci e Maior Divisor Comum
AULA DE MATEMÁTICA 1 Prof.: Fábio Barros CAPÍTULO 6 FUNÇÕES.
Associação de resistores
Datalog Recursivo AULA 6 PGC Sistemas de Banco de Dados
Árvore Binária de Busca
Algoritmos Distribuídos Professora: Lúcia Drummond
Medida do Tempo de Execução de um Programa
Pascal comandos iterativos: FOR WHILE REPEAT Matrizes (tabelas)
Sincronização de Processos (2)
LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo.
Uma Apresentação do Sistema GAP – Laboratório II
Resolução de Sistemas Lineares Métodos Exatos Fatoração LU
Program Slicing Patrick Machado.
INF 1771 – Inteligência Artificial
Dinâmica de um Sistema de Muitas Partículas
João Lucas de Oliveira Torres
Estruturas de Controlo em Pascal
IVAN SANTOS IVAN SANTOS. CIRCUITO EM SÉRIE Quando as resistências são conectadas uma em seguida da outra A corrente é a mesma em todas elas.
Fundamentos de Engenharia de SW
OO-SC (Meyer) - Cap 121 OO-SC (MEYER) Quando o contrato é quebrado: tratamento de exceções.
Exercícios PAA- Grafos
©Silberschatz, Korth and Sudarshan (modificado)5.1.1Database System Concepts Capítulo 5: Outras linguagens Query-by-Example (QBE) Datalog.
Material Didático Proposto 1 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas.
ASSOCIAÇÃO DE RESISTORES.
INF 1771 – Inteligência Artificial
Aula 03 – BCC202 Análise de Algoritmos (Parte 1) Túlio Toffolo www
Capítulo 3: Modelo Relacional
2.2.1Database System Concepts©Silberschatz, Korth and Sudarshan (Modificado) Capítulo 2: Modelo ER Conjuntos de entidades Conjuntos de relações Aspectos.
Estruturas de Dados Módulo 3 – Controle de Fluxo
O Portal do Estudante de Computação
Capítulo 7: Design de Bases de Dados
Subset Sum Algoritmos e Estruturas de Dados – IF672
Lógica Proposicional Tableaux semânticos.
Curso Prático de Métodos Formais
REGRAS DE PRODUÇÃO DO MODELO LÓGICO
Estrutura de Decisão e Repetição
Normalização Normalização é o conjunto de regras que visa minimizar as anomalias de modificação dos dados e dar maior flexibilidade em sua utilização.
Pontifícia Universidade Católica de Goiás Departamento de Engenharia Curso de Graduação em Engenharia de Produção ENG 1004 – Linguagem de Programação para.
Análise de Sistemas de Informação
CONJUNTOS.
Associação de resistores
©Silberschatz, Korth and Sudarshan (Modificado)3.3.1Database System Concepts Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução.
Introdução à Linguagem C
Material Didático Proposto 1 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas.
©Silberschatz, Korth and Sudarshan (modificado)4.1.1Database System Concepts Capítulo 4: SQL Estrutura básica Operações com conjuntos Funções de agregação.
Computação Eletrônica
©Silberschatz, Korth and Sudarshan (modificado)7.3.1Database System Concepts Capítulo 7: Design de Bases de Dados 1ª Forma Normal Objectivos com Design.
CONJUNTOS.
©Silberschatz, Korth and Sudarshan (Modificado)1.1Database System Concepts Capítulo 1: Introdução Função dos Sistemas de Bases de Dados Visão dos dados.
©Silberschatz, Korth and Sudarshan (modificado)9.1.1Database System Concepts Capítulo 9: BDs Objecto-Relacional Relações imbricadas Tipos complexos e objectos.
©Silberschatz, Korth and Sudarshan (Modificado)3.1.1Database System Concepts Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução.
©Silberschatz, Korth and Sudarshan (modificado)4.2.1Database System Concepts Capítulo 4: SQL Estrutura básica Operações com conjuntos Funções de agregação.
©Silberschatz, Korth and Sudarshan (modificado)9.2.1Database System Concepts Capítulo 9: BDs Objecto-Relacional Relações imbricadas Tipos complexos e objectos.
©Silberschatz, Korth and Sudarshan (modificado)6.1.1Database System Concepts Capítulo 6: Integridade e Segurança Restrições ao Domínio Integridade Referencial.
©Silberschatz, Korth and Sudarshan (modificado)7.3.1Database System Concepts Capítulo 7: Design de Bases de Dados 1ª Forma Normal Objectivos com Design.
Elsa Carvalho BEGIN  := id; b:=true; S:=[,..., ] WHILE (S  AND b)DO := top(S); S:=pop(S); := ; IF s e v são da forma f(t 1,... t n ), g(r 1,..., r m.
©Silberschatz, Korth and Sudarshan (modificado)7.4.1Database System Concepts Capítulo 7: Design de Bases de Dados 1ª Forma Normal Objectivos com Design.
©Silberschatz, Korth and Sudarshan (modificado)7.1.1Database System Concepts Capítulo 7: Design de Bases de Dados Objectivos com Design de Bases de Dados.
PostgreSQL Índices Nuno Campos N.º Nuno Campos - N.º Índice Introdução Tipos de Índices – B-Tree – R-Tree – Hash – GiST Classes de Operadores.
Linguagens de Programação
©Silberschatz, Korth and Sudarshan (modificado)6.1.1Database System Concepts Capítulo 6: Integridade e Segurança Restrições ao Domínio Integridade Referencial.
©Silberschatz, Korth and Sudarshan (Modificado)3.2.1Database System Concepts Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução.
Transcrição da apresentação:

©Silberschatz, Korth and Sudarshan (modificado)1Database System Concepts result := {R}; done := false; calcular F+; while (not done) do if (há um esquema Ri em result que não está na BCNF) then begin Seja uma dependência (não trivial) sobre Ri tal que Ri F +, e = ; result := (result – Ri) (Ri – ) (, ); end else done := true; Para todo o subconjunto de atributos de Ri, verificar se + (fecho relativo a F) não inclui nenhum atributo de Ri -, ou inclui todos os atributos de Ri. Se a condição do teste for violada para um subconjunto de atributos de Ri, então a dependência funcional ( + - ) Ri pertence a F+. Usa-se essa dependência para decompor Ri Exemplo de Decomposição BCNF (sem calcular F + ) Problema: decompor para a BCNF a relação R(A,B,C,D,E,F,G,H) com F = {A BCH, CH CD, E FG, G CH, A CD} Decomposição: R1(A,E,F,G) R2(A,B,C,D,H) R3(A,E) R4(E,F,G) R5(A,B,C,H) R6(C,D,H) R(A,B,C,D,E,F,G,H) está na BCNF? Testar para cada β F não trivial se + =R Considerando A BCH {A} + ={A,B,C,D,H} R Como {A} + R, R não está na BCNF. Usa-se a DF ( + - ) F + para decompor i.e. A BCDH. R1(A,E,F,G) está na BCNF? Testar para cada β F1 não trivial se + =R1 Obriga ao cálculo de F1. Em alternativa… Testar para cada R1 se 1. + não contém qualquer elemento de R1- ou 2. + contém todos os elementos de R1 ={A} + ={A,B,C,D,H}. Não viola 1 ok. ={E} + ={C,D,E,F,G,H}. Como falha as duas condições, R1 não está na BCNF. Usa-se a DF ( + - ) R1 para decompor i.e. E FG. R2(A,B,C,D,H) está na BCNF? Testar para cada R2 se 1. + não contém qualquer elemento de R2- ou 2. + contém todos os elementos de R2 ={A} + ={A,B,C,D,H}. Não viola 2 ok. ={B} + ={B}. Não viola 1 ok.... ={H} + ={H}. Não viola 1 ok. ={CH} + ={CDH}. Como falha as duas condições, R2 não está na BCNF. Usa-se a DF ( + - ) R2 para decompor i.e. CH D. R3(A,E) está na BCNF? Testar para cada R3 se 1. + não contém qualquer elemento de R3- ou 2. + contém todos os elementos de R3 ={A} + ={A,B,C,D,H}. Não viola 1 ok. ={E} + ={C,D,E,F,G,H}. Não viola 1 ok. Logo, está na BCNF! R4(E,F,G) está na BCNF? Testar para cada R4 se 1. + não contém qualquer elemento de R4- ou 2. + contém todos os elementos de R4 ={E} + ={C,D,E,F,G,H}. Não viola 2 ok. ={F} + ={F}. Não viola 1 ok. ={G} + ={C,D,G,H}. Não viola 1 ok. ={EF} + ={C,D,E,F,G,H}. Não viola 2 ok. ={EG} + ={C,D,E,F,G,H}. Não viola 2 ok. ={FG} + ={C,D,F,G,H}. Não viola 1 ok. Logo, está na BCNF! Após testar de forma semelhante as relações R5(A,B,C,H) e R6(C,D,H), conclui-se que também estão na BCNF.

©Silberschatz, Korth and Sudarshan (modificado)2Database System Concepts Para verificar se é preservada na decomposição R em R1, R2, …, Rn aplica-se o seguinte teste: result := while (alterações a result) do for each Ri na decomposição result := result ((result Ri) + Ri) Se result contém todos os atributos em, então é preservada. Exemplo de Preservação de DFs (sem calcular F + ) Problema: a decomposição de R(A,B,C,D,E,F,G,H) com F = {A BCH, CH CD, E FG, G CH, A CD} Em R3(A,E), R4(E,F,G), R5(A,B,C,H), R6(C,D,H) preserva as dependências funcionais? A BCH é preservada? Result = {A} 1ª iteração: Result = {A} (({A} R3) + R3) (({A} R4) + R4) (({A} R5) + R5) (({A} R6) + R6) = = {A} {A} {} {A,B,C,H} {} = {A,B,C,H} 2ª iteração: Result = {A,B,C,H} (({A,B,C,H} R3) + R3) (({A,B,C,H} R4) + R4) (({A,B,C,H} R5) + R5) (({A,B,C,H} R6) + R6) = = {A,B,C,H} {A} {} {A,B,C,H} {C,H,D} = ={A,B,C,D,H} 3ª iteração: Result = {A,B,C,D,H} (({A,B,C,D,H} R3) + R3) (({A,B,C,D,H} R4) + R4) (({A,B,C,D,H} R5) + R5) (({A,B,C,D,H} R6) + R6) = = {A,B,C,D,H} {A} {} {A,B,C,H} {C,H,D} = = {A,B,C,D,H} Como Result contém {B,C,H}, a dependência funcional A BCH é preservada. Esta conclusão poderia ser tirada após a 1ª iteração ou por observação directa que R5 contém todos os atributos da dependencia funcional. CH CD e E FG são preservadas pois existem relações com todos os seus atributos, R6 e R4 respectivamente. G CH é preservada? Result = {G} 1ª iteração: Result = {G} (({G} R3) + R3) (({G} R4) + R4) (({G} R5) + R5) (({G} R6) + R6) = = {G} {} {G} {} {} = {G} Como Result não contém {C,H}, a dependência funcional G CH não é preservada. A CD é preservada? Result = {A} 1ª iteração: Result = {A} (({A} R3) + R3) (({A} R4) + R4) (({A} R5) + R5) (({A} R6) + R6) = = {A} {A} {} {A,B,C,H} {} = {A,B,C,H} 2ª iteração: Result = {A,B,C,H} (({A,B,C,H} R3) + R3) (({A,B,C,H} R4) + R4) (({A,B,C,H} R5) + R5) (({A,B,C,H} R6) + R6) = = {A,B,C,H} {A} {} {A,B,C,H} {C,H,D} = ={A,B,C,D,H} Cmo Result já contém {C,D}, a dependência funcional A CD é preservada. Notar que ela é preservada apesar de não haver nenhuma relação que contenha todos os atributos da dependencia funcional.