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

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

Usando Mediadores para Integração de Múltiplas Bases de Dados

Apresentações semelhantes


Apresentação em tema: "Usando Mediadores para Integração de Múltiplas Bases de Dados"— Transcrição da apresentação:

1 Usando Mediadores para Integração de Múltiplas Bases de Dados
Bernadette Farias Lóscio DI - UFPE

2 Plano de Aula Motivação Arquitetura de Mediadores
Projeto de Mediadores Integração do Esquema do Mediador Especificação do Mediador Exemplo Conclusões

3 Integração de Múltiplas Bases de Dados
Tendência da descentralização Cooperação intersistemas Grande quantidade de dados disponíveis Avanços tecnológicos na comunicação de dados

4 Integração de Múltiplas Bases de Dados
Principal Problema: Heterogeneidade - os sistemas tem sido desenvolvidos usando diferentes especificações e modelo de dados Solução: Desenvolver meios para prover acesso integrado e transparente aos dados, além de melhorar o acesso e a qualidade da informações

5 Arquitetura de Mediadores
Nível de Aplicação Mediador 1 Mediador 2 Nível de Mediação Tradutor 1 Tradutor 2 Tradutor 3 Nível de Dados Base de Dados 1 Base de Dados 2 Base de Dados 3

6 Mediadores Geram informações para aplicações residentes em uma camada superior Exploram o conhecimento representado em um conjunto ou subconjunto de dados MEDIADOR BD2 BD1 BD3

7 Consultas e Atualizações através de Mediadores
1. As consultas são submetidas ao sistema, via mediador, e este as transforma em subconsultas a serem enviadas às bases de dados. 2. As subconsultas geradas pelo mediador devem ser traduzidas para linguagens de consultas de cada SGBD componente. 3. Os resultados das consultas são traduzidos e a resposta é devolvida ao usuário.

8 Exemplo 1 Esquemas Locais: EMP_RIO sal1 nome1 tel1 BD1: EMP_FOR sal2
2 BD2: Esquema do mediador: local EMP_M MED: sal nome tel

9 Recupere todos os dados do empregado chamado Roberto
Exemplo 1 Recupere todos os dados do empregado chamado Roberto Aplicação Mediador

10 Exemplo 1 - Execução da Consulta
C: select nome, tel, sal, local, from EMP_M where nome = “Roberto” Med C1: select nome1, tel1, sal1 from EMP_RIO where nome = “Roberto” C1 C2: select nome2, tel2, sal2 from EMP_FOR C2 Tradutor1 Tradutor2 Emp_Rio Emp_For

11 Exemplo 1 - Resultado da Consulta
C: select nome, tel, sal, local, from EMP_M where nome = “Roberto” nome1 = “Roberto” sal = 1000 tel = local = rio = null Med nome1 = “Roberto” sal = 1000 tel = Tradutor1 Tradutor2 Emp_Rio Emp_For

12 Exemplo 2 Esquemas Locais: EMP_PROJ1 sal1 nome1 tel1 BD3: EMP_PROJ2
2 BD4: Esquema do mediador: local EMP_M1 MED1: sal nome tel

13 Recupere o salário do empregado chamado Roberto
Exemplo 2 Recupere o salário do empregado chamado Roberto Aplicação Mediador

14 Exemplo 2 - Execução da Consulta
C: select nome, sal from EMP_M1 where nome = “Roberto” Med1 C1: select nome1, sal1 from EMP_PROJ1 where nome = “Roberto” C1 C2: select nome2, sal2 from EMP_PROJ2 C2 Tradutor3 Tradutor4 Emp_Proj1 Emp_Proj2

15 Exemplo 2 - Resultado da Consulta
C: select nome, sal from EMP_M1 where nome = “Roberto” nome = “Roberto” sal = R$ 6000,00 Med nome1 = “Roberto” sal1 = R$ 1000,00 nome2 = “Roberto” sal2 = R$ 5000,00 Tradutor3 Tradutor4 Emp_Rio Emp_For

16 Suporte para arquitetura de mediadores
Modelo de dados comum Linguagem de consultas comum 1 2 Ferramentas p/ criação de mediadores 3

17 Assertivas do mediador
Requisitos dos Usuários Projeto de Mediadores Definição do Esquema do Mediador Esquema do Mediador Integração do Esquema do Mediador Assertivas do mediador Especificação do Mediador Mapeador de Estados e Mapeador de Atualizações

18 Integração do Esquema do Mediador
Esquemas Locais Integração do Esquema do Mediador Assertivas de Correspondência do Mediador

19 Assertivas de Correspondência
Integração do Esquema do Mediador Assertivas de Correspondência Assertivas de Correspondência de Tipos Assertivas de Correspondência de Atributos Assertivas de Correspondência de Caminhos

20 Assertivas de Correspondência
Integração do Esquema do Mediador Assertivas de Correspondência S1: nome1 nger1 tel1 #depto1 data1 EMP DEPTO GER R1 R2 S2: nome2 sal2 tel2 EMPREGADO nger2 1. Assertiva de Correspondência de Tipos EMPREGADO º EMP 2. Assertiva de Correspondência de Atributos nome1 º nome2 3. Assertiva de Correspondência de Caminhos EMP-R1-DEPTO-R2-GER-nger1 º EMP_RIO-nger2

21 Assertiva de Dependência Existencial
Integração do Esquema do Mediador Assertiva de Dependência Existencial cpf1 lic1 (P1) PESSOA (C1) CARRO (PC)POSSUI S1: (P2) PROPRIETÁRIO cpf2 lic2 S2: 1. Assertiva de Dependência Existencial: POSSUI [PC-P1-cpf1, PC-C1-lic1] Í PROPRIETÁRIO [P2-cpf2, P2-lic2] (Um tipo de entidade é modelado como um tipo de relacionamento)

22 Assertivas do mediador
Requisitos dos Usuários Projeto de Mediadores Definição do Esquema do Mediador Esquema do Mediador Integração do Esquema do Mediador Assertivas do mediador Especificação do Mediador Mapeador de Estados e Mapeador de Atualizações

23 Mapeador de Estados s {DS1,...,DSn} DM = sM ({DS1,...,DSn})
Especificação do Mediador Mapeador de Estados Estados dos Esquemas Locais s M {DS1,...,DSn} Estado do Mediador DM = sM ({DS1,...,DSn}) sM : mapeador de estados do mediador

24 Mapeador de Atualizações
Especificação do Mediador Mapeador de Atualizações DM = (sM{DS1,...,DSn}) {DS1,...,DSn} sM tS1(u) tSn(u) tM u D’M = (sM{D’S1,...,D’Sn}) sM {D’S1,...,D’Sn} sM : mapeador de estados do mediador tM : mapeador de atualizações do mediador Mapeador de Atualizações = Conjunto de Tradutores

25 Definindo Tradutores TRADUTOR Processo de Definição de um Tradutor:
Especificação do Mediador Definindo Tradutores Pedido de Atualização Tradução (Seqüência de Atualizações) TRADUTOR Processo de Definição de um Tradutor: 1. Determinar as ACs relevantes para a Operação de Atualização 2. Determinar a ação requerida para a preservação de cada AC

26 Exemplo R1 S1: EMP DEPTO R2 GER S2: EMP_RIO S3: EMP_FOR nome1 tel1
nger1 S2: nome2 sal2 tel2 EMP_RIO S3: EMP_FOR sal3 nome3 3

27 Passo 1: Definição do Esquema do Mediador
Exemplo Passo 1: Definição do Esquema do Mediador Esquema de med EMP_M nger local nome tel sal

28 Passo 2: Integração do Esquema do Mediador
Exemplo Passo 2: Integração do Esquema do Mediador Assertivas de Correspondência de Tipos AC5: EMP_M º EMP AC6: EMP_M º Gen(EMP_RIO , EMP_FOR) AC7: EMP_RIO º EMP_M [local = ‘rio’] AC8: EMP_FOR º EMP_M[local = ‘for’]

29 Assertivas de Correspondência de Atributos
Exemplo - Passo 2 Assertivas de Correspondência de Atributos AC9: nome º nome1 AC10: nome º nome2 AC11: nome º nome3 AC12: tel º tel1 AC13: tel º tel2 AC14: sal º sal2 AC15: sal º sal3 AC16: local º [EMP_RIO :’rio’;EMP_FOR:’for’] AC17: º 3

30 Assertivas de Correspondência de Caminhos
Exemplo - Passo 2 Assertivas de Correspondência de Caminhos AC18: EMP_M-nger º EMP-R1-DEPTO-R2-GER-nger1 R1 R2 S1: EMP DEPTO GER nome1 tel1 #depto1 nger1 Smed: EMP_M nger local nome tel sal

31 Passo 3: Especificação do Mediador (Mapeador de Estados)
Exemplo Passo 3: Especificação do Mediador (Mapeador de Estados) Regra 1: <EMP_M {<nome N><tel T><sal S><nger G>< ‘null’><local ‘rio’}> :- <EMP {<nome1 N> <tel1 T> <EMP-R1-DEPTO-R2-GER-nger1 G>}> and <EMP_RIO {<nome2 N> <tel2 T> <sal2 S>}> Regra 2: <EMP_M {<nome N><tel T><sal S><nger G>< ‘null’><local ‘for’}> :- <EMP {<nome1 N> <tel1 T> <EMP-R1-DEPTO-R2-GER-nger1 G>}> and <EMP_RIO {<nome3 N> <tel3 T> <sal3 S>}>

32 Passo 3: Especificação do Mediador (Mapeador de Atualizações)
Exemplo - Passo 3 Passo 3: Especificação do Mediador (Mapeador de Atualizações) nome1 nger1 tel1 #depto1 data1 EMP DEPTO GER R1 R2 local nome tel sal nger EMP_M S1 Smed 1. Atualização: u = {e.nger := ‘v’} /*e = (nome:‘joão’, tel:‘ ’, ...., nger:‘pedro’)*/ 2. AC Relevante: EMP_M-nger º EMP-R1-DEPTO-R2-GER-nger1 3. Tradutor “Modifica_nger “: /*Ação Requerida para preservação de AC18*/ Se existir (i) e’ Î EMP tal que e’º e (ii) d ÎDEPTO tal que d. (DEPTO.R2.GER-nger1) = ‘v’ (iii) r Î R1 tal que e.(EMP-R1) = r Então { r .(R1-DEPTO) := d}

33 Vantagens da Metodologia
Uso de assertivas de correspondência para especificar formalmente o relacionamento entre esquemas. Algoritmos para geração automática dos mapeadores de estados e tradutores de atualização do mediador. A metodologia proposta também se aplica ao problema de TAV (Tradução de Atualização de Visões)

34 Conclusões Mediadores são indicados quando:
As informações mudam rapidamente Os usuários necessitam de informações imprevistas Aplicações necessitam que o estado da informação seja o mais atualizado Problemas com o uso de mediadores: Processamento de consultas é ineficiente quando: Consultas são emitidas várias vezes F.I. São lentas, caras ou não estão disponíveis Os passos de filtragem, tradução e consultas podem exigir alto custo de processamento

35 Referências [Chawathe94] Chawathe, S., Garcia Molina, H., Hammer, J. “The TSIMMIS Project: Integration of Heterogeneous Information Sources”, IPSJ’94. [Lóscio98] Lóscio, B.F., “Atualização de Múltiplas Bases de Dados através de Mediadores”, Dissertação de Mestrado, Universidade Federal do Ceará, Mar.1998. [Vidal97] Vidal, V. M. P., Lóscio, B.F., “Especificação de Mediadores para Acesso e Atualização de Múltiplas Bases de Dados”, XII Simpósio Brasileiro de Banco de Dados, Fortaleza, Ceará, Out.1997. [Wiederhold92] Widerhold, G., “Mediators in the Architecture of Future Information Systems”, IEEE Computer, pp.38-49, Mar Projeto TSIMMIS - www-db.stanford.edu


Carregar ppt "Usando Mediadores para Integração de Múltiplas Bases de Dados"

Apresentações semelhantes


Anúncios Google