cenário ponto-a-ponto paradigma ponto-a-pontoif696/aulas/introducao_pdms-acs.pdf · cenário pdms...

15
1 CIn.ufpe.br Fernando Fonseca Ana Carolina Integração de Dados e Warehousing Introdução a PDMS CIn.ufpe.br Classificação dos Sistemas Computacionais Sistemas Computacionais Sistemas Centralizados Sistemas Distribuídos Cliente-Servidor Ponto-a-Ponto 2 CIn.ufpe.br Cenário Ponto-a-Ponto Auto-organização Ausência de controle centralizado Comportamento dinâmico Dados não-estruturados Busca por palavra-chave database.pdf database.pdf database.pdf 0 arquivos encontrados database.pdf 3 CIn.ufpe.br Paradigma Ponto-a-Ponto Compartilhamento de serviços e recursos computacionais diretamente entre sistemas 4 CIn.ufpe.br Cenário PDMS (Peer Data Management System) Histórico do Paciente Histórico do Paciente Compartilhamento de dados estruturados Dados representados por meio de esquemas Mapeamentos entre esquemas Heterogeneidade de esquemas 5 CIn.ufpe.br Paradigma Ponto-a-Ponto 6

Upload: others

Post on 14-Apr-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

1

CIn.ufpe.br

Fernando Fonseca

Ana Carolina

Integração de Dados e Warehousing

Introdução a PDMS

CIn.ufpe.br

Classificação dos SistemasComputacionais

Sistemas Computacionais

Sistemas Centralizados

SistemasDistribuídos

Cliente-Servidor Ponto-a-Ponto

2

CIn.ufpe.br

Cenário Ponto-a-Ponto

Auto-organizaçãoAusência de controlecentralizadoComportamento dinâmicoDados não-estruturadosBusca por palavra-chave

database.pdfdatabase.pdf

database.pdf

0 arquivosencontrados

database.pdf

3

CIn.ufpe.br

Paradigma Ponto-a-Ponto

Compartilhamento de serviços e recursos computacionais

diretamente entre sistemas

4

CIn.ufpe.br

Cenário PDMS (Peer Data Management System)

Históricodo

Paciente

Históricodo

Paciente

Compartilhamento de dadosestruturados

Dados representados por meiode esquemasMapeamentos entre esquemas

Heterogeneidade de esquemas

5

CIn.ufpe.br

Paradigma Ponto-a-Ponto

6

2

CIn.ufpe.br

Terminologia

Peer ≡ Ponto ≡ NóComponente de uma rede P2PPode assumir o papel de cliente e servidor

ClusterAgrupamento de pontos com interessesespecíficos

Exemplo: cluster semânticoTopologia de rede e localização dos dados

EstruturadaNão-estruturada

7

CIn.ufpe.br

Terminologia

ServiçoFuncionalidades oferecidas pelos pontos

Transferência de conteúdo

Disponibilização de statusMotivação para agrupamento de pontos em umarede P2P

AnúncioForma de comunicar a disponibilidade de umrecurso por um ponto

8

CIn.ufpe.br

Terminologia

Rede Overlay

Rede Física

enlace físico

enlace virtual

Rede overlayRede virtual criada sobre uma rede já existenteNão é exatamente igual à rede física

9

CIn.ufpe.br

Paradigma Ponto-a-Ponto (P2P)

Consiste de uma ampla rede de pontoscomputacionais (ou nós de informação)interconectados que cooperam uns com os outros,trocando serviços e informaçõesCada ponto compartilha recursos com os outrospontos e se beneficia dos recursos dos demais

Recursos computacionaisEspaço em discoProcessamento

Recursos de redeConteúdo

10

CIn.ufpe.br

Paradigma Ponto-a-Ponto (P2P)

Sistemas P2PPontos possuem relativamente as mesmascaracterísticas e funções

Pontos trocam mensagens por meio dos seuslinks lógicos sem a interferência de umcoordenador (ponto servidor)Pontos são organizados em uma rede lógica(Overlay Network) no nível da aplicação

11

CIn.ufpe.br

Paradigma Ponto-a-Ponto (P2P)

Principais característicasSem coordenação centralSem repositório central

Sem local único de falha ou gargaloNenhum ponto tem visão global do sistemaTodos os dados e serviços são acessíveis dequalquer pontoPontos são autônomos

Pontos e conexões não são confiáveis

12

3

CIn.ufpe.br

Sistemas Ponto-a-Ponto (P2P)

Tipos de SistemasNão Estruturados

Sem restrição de localização dos dados

Principal aplicação: compartilhamento dearquivosBusca por palavra-chaveAlta disponibilidade de arquivos (réplicas nospontos)

13

CIn.ufpe.br

Tipos de Sistemas (Cont.)Estruturados

Referenciados como Distributed Hash Tables

(DHT)

Alta escalabilidadeBoa cobertura e alta precisãoDois aspectos importantes

Busca aos dados

Acesso aos dados

Sistemas Ponto-a-Ponto (P2P)

camada virtual de rede

(overlay network)

14

CIn.ufpe.br

Paradigma Ponto-a-Ponto (P2P)

VantagensPoder computacional (recursos dos demais pontos)Pontos com diferentes papéis (cliente ou servidor)

Compartilhamento de recursosMelhor desempenho, tolerância a falhas(replicação)

Autonomia dos pontos participantesAusência de administração

Escalabilidade (e.g. KaZaA com ~3-4 milhões deusuários)

15

CIn.ufpe.br

Paradigma Ponto-a-Ponto (P2P)

DesvantagensAusência de tratamento semântico na troca dedadosProblemas com disponibilidade e consistênciaFalta de estratégia para distribuição dos dadosPode prejudicar o desempenho de pontosAusência de administração centralizadaUsuários responsáveis por gerenciar seuspróprios recursos

Problemas de Segurança

16

CIn.ufpe.br

Topologias de Redes Ponto-a-Ponto

17

CIn.ufpe.br

Topologias de Redes P2P

TopologiaDefine a organização lógica dos pontos na rede

Tipos

PuraHíbridaSuper-Peer

18

4

CIn.ufpe.br

Topologias de Redes P2P

SistemasComputacionais

SistemasCentralizados

SistemasDistribuídos

Cliente-Servidor Ponto-a-Ponto

Pura Híbrida Super-Peer

19

CIn.ufpe.br

Topologia Pura

Inexistência de um servidor ou repositóriocentralizadoTodos os pontos são “iguais” e conectados entre si

BuscaNão-Estruturada

Flooding

TTL (time-to-live)Estruturada: DHT

Sistemas: Gnutella, Freenet

Ponto

20

CIn.ufpe.br

Topologia PuraResponsabilidades do ponto, como cliente

Enviar pedidos de serviço a outros pontosReceber as respostas dos pedidos feitos

Responsabilidades do ponto, como servidor

Receber pedidos de serviço de outros pontosProcessar os pedidos e executar um serviçorequeridoEnviar a resposta com os resultados do serviçorequeridoPropagar os pedidos de serviço a outros pontos

21

CIn.ufpe.br

Busca na Topologia Pura Não-Estruturada

TTL = 1007

?

04

?

02

IP do Ponto IIP do Ponto I

Q(X)Ponto C

Ponto F

Ponto IArquivo X

Ponto B

Ponto H

Ponto E

Ponto A

Ponto G

Ponto D

22

CIn.ufpe.br

Topologia Híbrida

Existência de um ou mais servidores centraisInformações de controle são armazenadas efornecidas por um servidor centralGerência facilitadaServidor central representa um ponto único defalhaSistema: Napster

Ponto

ServidorCentral

23

CIn.ufpe.br

Topologia HíbridaResponsabilidades do ponto, como cliente

Registrar no servidor seus serviços disponíveisEnviar ao servidor pedidos de busca por serviços ereceber respostas contendo listas de pontos com osserviços desejadosEnviar a outros pontos pedidos de serviço e receberas respostas destes pedidosProcessar e executar os serviços requeridos e enviarrepostas a quem fez o pedido

Responsabilidades do ponto, como servidorRegistrar serviços disponíveis nos pontosReceber pedidos de busca por serviços disponíveis,buscar por esses serviços e enviar respostas com aslocalizações dos serviços desejados

24

5

CIn.ufpe.br

Busca na Topologia Híbrida

IP do Ponto BPonto APonto Servidor Tabela Indexada

Ponto B(Arquivo X)

Ponto C

Ponto D

Upload de Nomes de Arquivos

Q(X)

25

CIn.ufpe.br

Topologia Super-Peer

ConsideraHeterogeneidade dos pontosMuitos pontos em conexões de baixa capacidadee alta instabilidadePoucos pontos em conexões de alta capacidade ebaixa instabilidade

26

CIn.ufpe.br

Topologia Super-Peer

Pontos heterogenêneosOrganização hierárquicaGrupos de pontos comunicam-se com outrosgrupos por meio de super-peers

Cada super-peer indexa as informaçõesarmazenadas no seu conjunto de pontos

Sistemas: KaZaA, Morpheus

PontoSuper Peer

27

CIn.ufpe.br

Busca na Topologia Super-Peer

Ponto A1 Ponto A2 Ponto A3

Super-Peer A

Super-Peer B

Ponto B1 Ponto B2 Ponto B3 Ponto C1 Ponto C2 Ponto C3(Arquivo x)

Super-Peer C

Q(X)

28

CIn.ufpe.br

Desafios da Topologia Super-Peer

Qual a taxa ideal de pontos por super-peer?Como os super-peers devem conectar-se entre si?

Topologia estruturada ou não-estruturada?

VariaçãoK-redundant

K = 2

29

CIn.ufpe.br

Comparativo entre Topologias

ArquiteturaSegurança

(Pontos Maliciosos)

Consistência

(Dados)

Escalabilidade

(Entrar e Sair)

Confiabilidade

(Ponto de Falha)

P2P Pura ���� ����

P2P Híbrida ����

Super-Peer

30

6

CIn.ufpe.br

Propriedades dos Sistemas P2P

31

CIn.ufpe.br

Principais Propriedades dos SistemasP2P

ConectividadeAuto-organização

DescentralizaçãoEscalabilidadeRoteamento…

32

CIn.ufpe.br

Conectividade

Ad-hoc e dinâmicaEnvolve

Conexão

Desconexão (normal, falha)Conexão de um ponto na rede

Feita por meio de outro que já esteja participandoAlguns pontos podem atuar como entry points

Pontos relacionados devem ficar “próximos” uns dosoutros

33

CIn.ufpe.br

Auto-Organização

Capacidade dos pontos se realocarem na rede apósa ocorrência de um evento

ConexãoDesconexão e/ou FalhaTimeout

A inexistência de uma administração centralizadafaz com que a reorganização de rede P2P fique aoencargo dos próprios pontos

34

CIn.ufpe.br

Descentralização

Dados e metadados estão distribuídos entre ospontosNão existe um servidor central responsável portarefas como

Reorganização da redeArmazenamento de metadados

Próprios pontos devem ser responsáveis por taistarefasInexistência de ponto único de falha

35

CIn.ufpe.br

Escalabilidade

Capacidade da rede P2P crescer sem ficarsobrecarregadaSistema cliente-servidor

Administradores podem estender ou rebalancearos recursos computacionais para compensar ocrescimento da rede

Sistema P2PSoluções devem estar embutidas em cada ponto

36

7

CIn.ufpe.br

EscalabilidadeDepende da topologia adotada

HíbridaDificuldade em tratar a escalabilidadePontos centrais podem necessitar debalanceamento e/ou expansão física do hardwarepara compensar o crescimento da redePreocupação com os custos de manutenção dospontos centraisContra-exemplo: Napster mostrou-se robusto eeficiente

PuraSobrecarga de troca de mensagens paradescoberta de novos pontos e buscas na rede

Super-PeerDivisão e/ou fusão (coalesce) de clusters

37

CIn.ufpe.br

Roteamento

Principais mecanismos de roteamento para redesP2P

HíbridoFlooding (ou inundação): modelo descentralizadonão-estruturadoTabela Hash Distribuída (DHT): modelodescentralizado estruturadoSemantic Overlay Network (SON)

38

CIn.ufpe.br

Roteamento – Flooding

ProblemasExcesso de mensagensMensagens duplicadas

Valor ideal de TTLTTL alto: sobrecarga na redeTTL baixo: nenhum resultado encontrado

VariaçõesBusca informada: uso de cache local

Busca informada com replicaçãoAprofundamento iterativo: múltiplos valorescrescentes para TTL

39

CIn.ufpe.br

Roteamento – Modelo DHT

Tentativa de melhorar os algoritmos de roteamento dossistemas P2P não-estruturados

Itens (arquivos) são distribuídos entre os pontos deacordo com um algoritmo

Pontos não escolhem os itens à vontade

Uso de replicação para garantir disponibilidade

40

CIn.ufpe.br

Roteamento – Modelo DHTFunção hash

Mapeia um ponto em um identificador únicoh(‘172.17.166.99’) � 8400

Mapeia um item (arquivo) em um identificadorúnico

h(‘TutorialP2P.ppt’) � 8045Qualquer função aleatória de hash “boa” ésuficiente

Padrão SHA-1 (colisão praticamente impossível)Faixa de resultados da função hash é distribuída pelarede

41

CIn.ufpe.br

Roteamento – Modelo DHT

Cada ponto é responsável por armazenar itens cujoidentificador é igual ou próximo ao identificador doponto

42

Dado um identificador, um ponto deve ser capaz deencaminhar a consulta para o ponto cujoidentificador mais se aproxima

8

CIn.ufpe.br

Roteamento – Modelo DHTPara cada objeto, o(s) ponto(s) cuja faixa “cobre” oobjeto deve ser alcançável por um caminho “curto”

De qualquer outro pontoAbordagens

Chord, CAN, Pastry, Tapestry, ...Diferem na escolha do algoritmo de roteamento(determina a geometria da rede)

GeometriasAnel: ChordÁrvore: Pastry, TapestryXOR: KademliaHipercubo: CANHíbrida: Pastry (pode trabalhar como anel)

43

CIn.ufpe.br

Roteamento – Modelo DHT

Chord

44

CIn.ufpe.br

Roteamento

Ineficiência de consultas no modelo de inundação(escalabilidade)Consultas no modelo DHT

Escalonável, porém “pobre”Não permite

Consultas por aproximaçãoConsultas por faixa

Uma consulta deve ser enviada apenas para os pontosaptos a respondê-laEm geral, é possível representar o conteúdocompartilhado por meio de ontologias

Música, filmes, artigos científicos, …

45

CIn.ufpe.br

Roteamento - SON

Semantic Overlay NetworkVirtual, abstrata, camada independente depontos selecionado

46

CIn.ufpe.br

Roteamento - SON

VantagensIntroduz visões semânticas sobre a redefísicaMediação e integração (correspondências,reescrita de consultas)Reduz a quantidade de mensagens na rede

47

CIn.ufpe.br

Roteamento - SON

Pontos agrupados em clusters

Overlap de clusters

Consultas enviadas apenas para clusters relevantes

Clusters irrelevantes são descartados

48

9

CIn.ufpe.br

Roteamento - SONSON associada ao conceito de hierarquia declassificaçãoExemplos

9 SON para classificação de músicas por estilo4 SON para classificação de músicas por tom

Música

Rock Jazz

Soft

Dance

Pop

New Orleans

Fusion

Bop

Estilos

Su

b-e

stilo

s

Música

Warm Exciting Sweet

Tons

49

CIn.ufpe.br

PDMSPeer Data Management System

50

CIn.ufpe.br

Sistemas de Gerenciamento de Dados Ponto-a-Ponto (PDMS)

Sistema de Gerenciamento de DadosCom arquitetura descentralizadaFacilmente extensível

Na qual qualquer usuário pode contribuircom

Novos dadosNovos esquemasMapeamentos entre os esquemas dospontos

51

CIn.ufpe.br

Sistemas de Gerenciamento de Dados Ponto-a-Ponto (PDMS)

São uma evolução natural dos Sistemas de Integração de Dados

substituindo seu único esquema lógico(mediação) por uma

coleção de mapeamentos semânticosentre os esquemas individuais de cada

ponto

52

CIn.ufpe.br

Sistemas de Gerenciamento de Dados Ponto-a-Ponto (PDMS)

Algumas característicasAutonomia: controle sobre os dados locaisDinamismo: pontos e recursos podem entrar esair a qualquer momentoDescentralização: cada ponto é independentedos outrosCooperação: compartilhamento de recursos eserviços entre os pontosEsquema local do BD: cada ponto tem seuesquema (ausência de esquema global)Dados: podem estar incompletos, indisponíveisou inconsistentes

53

CIn.ufpe.br

Arquitetura Genérica de um Ponto

ConsultaLocal

ConsultaGlobal

Resposta

Ponto

Fonte deDados Local

MapeamentosSemânticos

Cache deDados

Remotos

Wrapper

Camada de Gerenciamento de Dados

Gerenciadorde Consultas

Gerenciadorde Atualizações

Gerenciadorde Cache

Ca

ma

da

de

Ace

sso

ao

s D

ad

os

Inte

rfa

ce

co

m o

Usu

ário

Ca

ma

da

de

Re

de

P2

P

Rede P2P

Ponto

Ponto

Ponto

[Sung et al. 2005]

54

10

CIn.ufpe.br

Sistemas de Gerenciamento de Dados Ponto-a-Ponto (PDMS)

Gerenciamento de dados distribuídosCompartilhamento de dados em larga escalaSolução depende fortemente da topologia adotada

Impraticável a existência de esquema de mediaçãoúnico

55

CIn.ufpe.br

Problemas de um Esquema de MediaçãoÚnico

Conflito com as propriedades dos sistemas P2PDinamismo

Atualização do esquema de mediação acada conexão e/ou desconexão

AutonomiaNem todos os pontos querem compartilhartodos os dados

56

CIn.ufpe.br

Problemas de um Esquema de MediaçãoÚnico

Conflito com as propriedades dos sistemas P2P(Cont.)

EscalabilidadeOnde armazenar um esquema de mediaçãoúnico?

CentralizadoPonto único de falhaInvestimento em hardware econectividade

DistribuídoTécnicas para garantir uma visãointegrada do esquema de mediaçãoEsquema replicado: problemas dearmazenamento e consistência

57

CIn.ufpe.br

Pontos Positivos dos PDMS

Não existe esquema globalManutenção

Mapeamentos definidos da forma mais conveniente(pontos “próximos”)Consultas são elaboradas de acordo com oesquema do ponto

Resultados vêm de qualquer lugar do sistemaPDMS x Compartilhamento de Arquivos

Dados possuem semântica mais “rica”Não são tão dinâmicos (conexão/desconexão)

58

CIn.ufpe.br

Gerenciamento de Dados em Sistemas P2P

59

CIn.ufpe.br

Aspectos do Gerenciamento de Dados em Sistemas P2P

Mapeamentos entre EsquemasProcessamento de ConsultasConsistência de Dados

Localização de DadosConectividade entre PontosTolerância a FalhasQualidade de Dados

60

11

CIn.ufpe.br

PDMS – Mapeamentos entre Esquemas

MapeamentosEstabelecem relacionamentos entre esquemasEm sistemas de integração de dados sãoestabelecidos entre o esquema de mediação eas fontes de dadosEm PDMS são estabelecidos entre os pontosA qualidade dos mapeamentos possui forteinfluência no resultado das consultas

Principais formalismosGlobal-as-view (GAV)Local-as-view (LAV)

61

CIn.ufpe.br

PDMS – Mapeamentos entre Esquemas

Mapeamentos em um PDMSPontos em um PDMS são relacionados atravésde mapeamentosO conjunto de mapeamentos define a redesemântica de um PDMSA otimização da rede semântica considera

Eliminação de mapeamentos redundantesRedução do diâmetro do PDMS (para reduzir aperda de informação na reformulação de consultas)Identificação de pontos semânticos inacessíveis

62

CIn.ufpe.br

PDMS – Mapeamentos entre Esquemas

Mapeamentos em um PDMSVantagem de um PDMS

Quando um novo ponto entra no sistema serápreciso fornecer mapeamentos para um pequenonúmero de pontos já existentesEm termos de esquema, os pontos existentesdevem ser similares ao novo ponto

Dada uma consulta submetida a um ponto, osistema reformulará a consulta de acordo com osesquemas dos pontos vizinhos

63

CIn.ufpe.br

PDMS – Mapeamentos entre Esquemas

Mapeamentos em um PDMS

P5

P1

P3

P2

P4

Ponto

Esquema do Ponto

Fonte de Dados

Mapeamento Local

Mapeamento entre Pontos

64

CIn.ufpe.br

PDMS – Mapeamentos entre EsquemasDiferentes formalismos podem ser usados para adefinição dos mapeamentos (GAV, LAV)

Exemplos

Mapeamentos locais: LAVMapeamentos entre pontos: GAV

Os mapeamentos podem ser direcionados

P1 P2M12

M21

65

CIn.ufpe.br

PDMS – Mapeamento de Dados

Mapeamentos entre dados são necessários quandoseus valores (formatos) são diferentesTabelas de mapeamento podem ser usadas paraespecificar a correspondência entre valores de atributos

Associam valores dentro de um único domínio ouentre domíniosRepresentam o conhecimento de especialistasEx.:

ParaFortalezaPorto AlegreRecife

OrigemFORPOAREC

66

12

CIn.ufpe.br

PDMS – Processamento de consultas

Cada ponto tem um esquema associado

Pontos são conectados através de “caminhos demapeamentos”Pontos podem ser servidores de dados, mediadoresentre pontos e clientes que submetem consultas

67

CIn.ufpe.br

PDMS – Processamento de Consultas

1. Uma consulta Q é submetida a um ponto P1 deacordo com o esquema de P1

2. Se P1 possui seus próprios dados, então o PDMSrecupera a resposta de Q a partir de P1

3. Em seguida, de acordo com os mapeamentoscorrespondentes, Q será reformulada para osvizinhos de P1

4. As consultas reformuladas são submetidas aosvizinhos de P1 e assim sucessivamente

68

CIn.ufpe.br

PDMS – Processamento de Consultas

Ponto P2

Ponto P1

Ponto P4

Ponto P3

(Q, P2)

(Q1, P1)

(Q4, P4)

(Q3, P3)

PDMS Reformulação de Q

M21

M14

M23

Caminho de mapeamentos

69

CIn.ufpe.br

PDMS – Processamento de Consultas

A técnica de reformulação de consultadependerá do formalismo para definiçãodos mapeamentos

View Unfolding (Abordagem GAV)View Rewriting (Abordagem LAV)

70

CIn.ufpe.br

PDMS – Processamento de ConsultasExemplo

Ponto P1Ofertas (código, descrição, organização, dataInício)

Ponto P2OfertasEmprego(código, descrição, empresa, área,data)

Mapeamento entre P2 e P1 (M21)P2.OfertasEmprego(código, descrição, empresa,data) ⊆

P1.Ofertas (código, descrição, organização,dataInício)

71

CIn.ufpe.br

PDMS – Processamento de ConsultasExemplo

Esquema do Ponto P1

Ofertas (código, descrição, organização, dataInício)

Esquema do Ponto P2

OfertasEmprego(código, descrição, empresa, área, data)

M21

Mapeamento local

Relações locais

Mapeamento local

Relações locais

72

13

CIn.ufpe.br

PDMS – Processamento de ConsultasExemplo 1

Consulta submetida em P2:Q OfertasEmprego(código, ‘Desenvolvimento’, ‘Microsoft’, ‘TI’,’01/10/2006’)

Passos de execução da consulta:1. P2 usa os mapeamentos locais para reformular Q de acordo com as

relações locais de P22. P2 passa Q para P1 de acordo com o mapeamento (M21)3. A reformulação de consultas é view unfolding4. P1 usa os mapeamentos locais para reformular Q’ de acordo com as

relações locais de P1

Esquema do Ponto P1

Ofertas (código, descrição, organização, dataInício)

Esquema do Ponto P2

OfertasEmprego(código, descrição, empresa, área, data)

M21 Q

Q’q1’ q2’ q1 q2

73

CIn.ufpe.br

r2

PDMS – Processamento de ConsultasExemplo 1

Passos de execução da consulta:5. Como não existem mais mapeamentos o processo de reformulação

é finalizado6. Em seguida as consultas são avaliadas nas relações locais, seus

resultados integrados e retornados para P2

Esquema do Ponto P1

Ofertas (código, descrição, organização, dataInício)

Esquema do Ponto P2

OfertasEmprego(código, descrição, empresa, área, data)

RR’

r1’ r2’ r1

74

CIn.ufpe.br

PDMS – Processamento de ConsultasExemplo 2

Consulta submetida em P1:Q Ofertas(código, ‘Desenvolvimento’, ‘Microsoft’, ’01/10/2006’)

Passos de execução da consulta:1. P1 usa os mapeamentos locais para reformular Q de acordo com as

relações locais de P12. P1 passa Q para P2 de acordo com o mapeamento (M12)3. A reformulação de consultas é view rewriting

4. P2 usa os mapeamentos locais para reformular Q’ de acordo comas relações locais de P2

Esquema do Ponto P1

Ofertas (código, descrição, organização, dataInício)

Esquema do Ponto P2

OfertasEmprego(código, descrição, empresa, área, data)

M12Q

Q’q1 q2

q1’ q2’

75

CIn.ufpe.br

r2’

PDMS – Processamento de ConsultasExemplo 2

Passos de execução da consulta:5. Como não existem mais mapeamentos o processo de reformulação

é finalizado6. Em seguida as consultas são avaliadas nas relações locais, seus

resultados integrados e retornados para P1

Esquema do Ponto P1

Ofertas (código, descrição, organização, dataInício)

Esquema do Ponto P2

OfertasEmprego(código, descrição, empresa, área, data)

R

R’

r1 r2r1’

76

CIn.ufpe.br

PDMS – Processamento de Consultas

Em um PDMS um ponto só é acessível através dosmapeamentosCom o aumento do número de pontos no sistema onúmero de esquemas e mapeamentos aumenta

Caminhos de mapeamentos muito extensos (muitasreformulações)Perda de semântica à medida que as consultas sãorepassadas (reformuladas)Restrições de tempo de resposta

77

CIn.ufpe.br

PDMS – Processamento de Consultas

Ontologias podem ser usadas para reduzir o tamanhodos caminhos de mapeamentos

Pontos similares devem ser detectados

“Atalhos” podem ser definidos entre os pontos

Ponto P1 Ponto P3“atalho”

78

14

CIn.ufpe.br

PDMS – Processamento de Consultas

OtimizaçãoSeguir por todos os caminhos leva a ineficiências

O algoritmo pode seguir muitos caminhos queresultam em reformulações redundantes(consultas desnecessárias)A aplicação repetitiva de query unfoldingfreqüentemente resulta em consultas redundantes.

Evitar a execução de uma consulta de formaredundante – que retorne um subconjunto deresultados de uma consulta executada anteriormente(query containment)

79

CIn.ufpe.br

PDMS – Consistência de Dados

Problema que surge em qualquer cenário onde exista aduplicação de dadosPrincipais cenários: caching e replicaçãoBenefícios da abordagem P2P trazem novos desafios

Caching: garantir que os dados da cache de umponto estejam consistentes com os dados dos seuspontos vizinhosReplicação: a propagação de atualizações nos dadostorna-se uma tarefa bastante complexa

Grande número de pontos

Indisponibilidade dos pontos

80

CIn.ufpe.br

PDMS – Localização de Dados

Difícil de ser previstaConectividade dinâmicaDescentralização (conhecimento parcial)

Topologia HíbridaPontos descrevem seus dados durante aconexãoMetadados armazenados em um repositóriocentral

81

CIn.ufpe.br

PDMS – Localização de Dados

Topologia PuraNão-Estruturada

Descoberta de RecursosTransitividade (mapeamentos)

Aproximação de PontosEstatísticas e probabilidade para aproximaçãode pontos “distantes”

EstruturadaSemantic Overlay Networks

Topologia Super-PeerPontos são agrupados em clusters (e comunidades)Utilização de índices (SP-P e SP-SP)

82

CIn.ufpe.br

PDMS – Localização de DadosTopologia Pura Não-Estruturada

P1 P2 P3

EmpregadoNúmero…

FuncionárioCódigo…

Emp Código…

Empregado

Vizinhos = {P2}Empregado [P1] = Funcionário [P2]

Vizinhos = {P1, P3}Funcionário [P2] = Empregado [P1]Funcionário [P2] = Emp [P3]

Vizinhos = {P2}Emp [P3] = Funcionário [P2]

Vizinhos = {P2, P3}Empregado [P1] = Funcionário [P2]Empregado [P1] = Emp [P3]

Vizinhos = {P2, P1}Emp [P3] = Funcionário [P2]Emp [P3] = Empregado [P1]

83

CIn.ufpe.br

PDMS – Localização de Dados

Topologia Super-PeerÍndices semânticos

(a) Cluster Semântico (b) Comunidade Semântica

Super Peer

Ponto PontoPonto Ponto Ponto Ponto

Ponto Semântico

Super Peer

Super Peer

84

15

CIn.ufpe.br

PDMS – Conectividade

Dinâmica e ad-hocDinamismo é menor do que em outros sistemas P2P, e.g.compartilhamento de arquivos

Importância da alocação eficiente de pontosMapeamentos entre esquemas

Qualidade dos mapeamentosProcessamento de consultas

Escolha dos pontos aptos a responderem consultas

Topologia PuraDefinição dos vizinhos iniciais

Topologia Super-PeerClusters e comunidades semânticas para agrupar

85

CIn.ufpe.br

PDMS – Tolerância a Falhas

Substituição de super-peers

Eleição

Fusão de clusters

Servidores de Backup

Alternativa para evitar políticas de substituiçãoSelecionado entre os pontosCópia periódica dos metatados (Super-peer �

Servidor de Backup)

86

CIn.ufpe.br

PDMS – Qualidade de Dados

Aspectos de qualidadeDados das fontesMapeamentos entre esquemas

IncompletosIncorretos

Plano da ConsultaResultado das consultas

87

CIn.ufpe.br

PDMS – Qualidade de Dados

Alguns Critérios:DisponibilidadeConsistênciaRelevânciaCompletude

Extensão: conjunto de objetosIntenção: esquema

CoberturaDensidadeTempo de Resposta

Web

88