Você está na página 1de 11

Classificação dos Sistemas

Computacionais
Sistemas
Computacionais

Integração de Dados e Warehousing


Sistemas Sistemas
Centralizados Distribuídos
Introdução a PDMS

Fernando Fonseca
Ana Carolina Cliente-Servidor Ponto-a-Ponto

CIn.ufpe.br CIn.ufpe.br
2

Cenário Ponto-a-Ponto
Paradigma Ponto-a-Ponto

database.pdf
0 arquivos
Compartilhamento de serviços e
database.pdf
encontrados

recursos computacionais
database.pdf
diretamente entre sistemas
Auto-organização
Ausência de controle
centralizado
Comportamento dinâmico
Dados não-estruturados
Busca por palavra-chave

CIn.ufpe.br CIn.ufpe.br
3 4

Cenário PDMS (Peer Data


Management System)
Histórico
Histórico
do
do
Paciente
Paciente

Paradigma
Compartilhamento
estruturados
de

Dados representados por meio


dados
Ponto-a-Ponto
de esquemas
Mapeamentos entre esquemas
Heterogeneidade de
esquemas

CIn.ufpe.br CIn.ufpe.br
5 6

1
Terminologia Terminologia

Peer ≡ Ponto ≡ Nó Serviço


Componente de uma rede P2P Funcionalidades oferecidas pelos pontos
Pode assumir o papel de cliente e servidor Transferência de conteúdo
Cluster Disponibilização de status
Agrupamento de pontos com interesses Motivação para agrupamento de pontos em uma
específicos rede P2P
Exemplo: cluster semântico Anúncio
Topologia de rede e localização dos dados Forma de comunicar a disponibilidade de um
Estruturada recurso por um ponto
Não-estruturada
CIn.ufpe.br CIn.ufpe.br
7 8

Terminologia Paradigma Ponto-a-Ponto (P2P)


Rede overlay
Consiste de uma ampla rede de pontos
Rede virtual criada sobre uma rede já existente computacionais (ou nós de informação)
Não é exatamente igual à rede física interconectados que cooperam uns com os outros,
trocando serviços e informações
enlace virtual Cada ponto compartilha recursos com os outros
Rede Overlay
pontos e se beneficia dos recursos dos demais
Recursos computacionais
Espaço em disco
enlace físico Processamento
Recursos de rede
Conteúdo

Rede Física
CIn.ufpe.br CIn.ufpe.br
9 10

Paradigma Ponto-a-Ponto (P2P) Paradigma Ponto-a-Ponto (P2P)

Sistemas P2P Principais características


Pontos possuem relativamente as mesmas Sem coordenação central
características e funções Sem repositório central
Pontos trocam mensagens por meio dos seus Sem local único de falha ou gargalo
links lógicos sem a interferência de um Nenhum ponto tem visão global do sistema
coordenador (ponto servidor)
Todos os dados e serviços são acessíveis de
Pontos são organizados em uma rede lógica qualquer ponto
(Overlay Network) no nível da aplicação
Pontos são autônomos
Pontos e conexões não são confiáveis

CIn.ufpe.br CIn.ufpe.br
11 12

2
Sistemas Ponto-a-Ponto (P2P) Sistemas Ponto-a-Ponto (P2P)
Tipos de Sistemas Tipos de Sistemas (Cont.)
Não Estruturados Estruturados
Sem restrição de localização dos dados Referenciados como Distributed Hash Tables
Principal aplicação: compartilhamento de (DHT)
arquivos Alta escalabilidade
Busca por palavra-chave Boa cobertura e alta precisão
Alta disponibilidade de arquivos (réplicas nos Dois aspectos importantes
pontos) Busca aos dados camada virtual de rede
Acesso aos dados (overlay network)

CIn.ufpe.br CIn.ufpe.br
13 14

Paradigma Ponto-a-Ponto (P2P) Paradigma Ponto-a-Ponto (P2P)


Vantagens
Poder computacional (recursos dos demais pontos) Desvantagens
Ausência de tratamento semântico na troca de
Pontos com diferentes papéis (cliente ou servidor) dados
Compartilhamento de recursos Problemas com disponibilidade e consistência
Melhor desempenho, tolerância a falhas Falta de estratégia para distribuição dos dados
(replicação) Pode prejudicar o desempenho de pontos
Autonomia dos pontos participantes Ausência de administração centralizada
Ausência de administração Usuários responsáveis por gerenciar seus
Escalabilidade (e.g. KaZaA com ~3-4 milhões de próprios recursos
usuários) Segurança
CIn.ufpe.br CIn.ufpe.br
15 16

Topologias de Redes P2P

Topologia
Define a organização lógica dos pontos na rede
Topologias de Redes Tipos
Ponto-a-Ponto Pura
Híbrida
Super-Peer

CIn.ufpe.br CIn.ufpe.br
17 18

3
Topologias de Redes P2P Topologia Pura

Sistemas Inexistência de um servidor ou repositório


Computacionais centralizado
Todos os pontos são “iguais” e conectados entre si
Sistemas Sistemas Busca
Centralizados Distribuídos Ponto
Não-Estruturada
Flooding
Cliente-Servidor Ponto-a-Ponto TTL (time-to-live)
Estruturada: DHT
Sistemas: Gnutella, Freenet
Pura Híbrida Super-Peer
CIn.ufpe.br CIn.ufpe.br
19 20

Busca na Topologia Pura Não-


Topologia Pura
Estruturada
Responsabilidades do ponto, como cliente
Enviar pedidos de serviço a outros pontos 02
TTL = 10
04
07
Ponto D Ponto E Ponto F
Receber as respostas dos pedidos feitos
Responsabilidades do ponto, como servidor
Receber pedidos de serviço de outros pontos Q(X)
Ponto A
? Ponto B
? Ponto C
Processar os pedidos e executar um serviço IP do Ponto I IP do Ponto I

requerido
Enviar a resposta com os resultados do serviço
requerido Ponto G Ponto H Ponto I
Arquivo X

Propagar os pedidos de serviço a outros pontos


CIn.ufpe.br CIn.ufpe.br
21 22

Topologia Híbrida Topologia Híbrida


Existência de um ou mais servidores centrais Responsabilidades do ponto, como cliente
Informações de controle são armazenadas e Registrar no servidor seus serviços disponíveis
fornecidas por um servidor central Enviar ao servidor pedidos de busca por serviços e
receber respostas contendo listas de pontos com os
Gerência facilitada serviços desejados
Servidor central representa um ponto único de Enviar a outros pontos pedidos de serviço e receber
as respostas destes pedidos
falha
Servidor Processar e executar os serviços requeridos e enviar
Sistema: Napster Central repostas a quem fez o pedido
Responsabilidades do ponto, como servidor
Ponto Registrar serviços disponíveis nos pontos
Receber pedidos de busca por serviços disponíveis,
buscar por esses serviços e enviar respostas com as
localizações dos serviços desejados
CIn.ufpe.br CIn.ufpe.br
23 24

4
Busca na Topologia Híbrida Topologia Super-Peer
Considera
Heterogeneidade dos pontos
Upload de
Nomes de Muitos pontos em conexões de baixa capacidade
Arquivos Ponto D e alta instabilidade
Q(X)
Ponto Servidor Poucos pontos em conexões de alta capacidade e
Ponto A
IP do Ponto B Tabela Indexada
baixa instabilidade

Ponto B Ponto C
(Arquivo X)

CIn.ufpe.br CIn.ufpe.br
25 26

Topologia Super-Peer
Busca na Topologia Super-Peer
Pontos heterogenêneos Q(X)
Organização hierárquica
Ponto A1 Ponto A2 Ponto A3
Grupos de pontos comunicam-se com outros
grupos por meio de super-peers
Cada super-peer indexa as informações Super-Peer A
armazenadas no seu conjunto de pontos
Sistemas: KaZaA, Morpheus Super-Peer B Super-Peer C

Super Ponto B1 Ponto B2 Ponto B3 Ponto C1 Ponto C2 Ponto C3


(Arquivo x)
Ponto Peer

CIn.ufpe.br CIn.ufpe.br
27 28

Desafios da Topologia Super-Peer Comparativo entre Topologias


Segurança Consistência Escalabilidade Confiabilidade
Qual a taxa ideal de pontos por super-peer? Arquitetura
(Pontos Maliciosos) (Dados) (Entrar e Sair) (Ponto de Falha)

Como os super-peers devem conectar-se entre si?


Topologia estruturada ou não-estruturada?
Variação
P2P Pura
   
K-redundant
K=2 P2P Híbrida
   
Super-Peer
   
CIn.ufpe.br CIn.ufpe.br
29 30

5
Principais Propriedades dos Sistemas
P2P

Conectividade
Auto-organização
Propriedades dos Descentralização
Escalabilidade
Sistemas P2P Roteamento

CIn.ufpe.br CIn.ufpe.br
31 32

Conectividade Auto-Organização

Ad-hoc e dinâmica Capacidade dos pontos se realocarem na rede após


Envolve a ocorrência de um evento
Conexão
Conexão
Desconexão e/ou Falha
Desconexão (normal, falha)
Timeout
Conexão de um ponto na rede A inexistência de uma administração centralizada
Feita por meio de outro que já esteja participando faz com que a reorganização de rede P2P fique ao
Alguns pontos podem atuar como entry points encargo dos próprios pontos
Pontos relacionados devem ficar “próximos” uns dos
outros

CIn.ufpe.br CIn.ufpe.br
33 34

Descentralização Escalabilidade

Dados e metadados estão distribuídos entre os Capacidade da rede P2P crescer sem ficar
pontos sobrecarregada
Não existe um servidor central responsável por Sistema cliente-servidor
tarefas como Administradores podem estender ou rebalancear
os recursos computacionais para compensar o
Reorganização da rede crescimento da rede
Armazenamento de metadados Sistema P2P
Próprios pontos devem ser responsáveis por tais Soluções devem estar embutidas em cada ponto
tarefas
Inexistência de ponto único de falha

CIn.ufpe.br CIn.ufpe.br
35 36

6
Escalabilidade Roteamento
Depende da topologia adotada
Híbrida
Dificuldade em tratar a escalabilidade Principais mecanismos de roteamento para redes
Pontos centrais podem necessitar de P2P
balanceamento e/ou expansão física do hardware Híbrido
para compensar o crescimento da rede
Flooding (ou inundação): modelo descentralizado
Preocupação com os custos de manutenção dos
pontos centrais não-estruturado
Contra-exemplo: Napster mostrou-se robusto e Tabela Hash Distribuída (DHT): modelo
eficiente descentralizado estruturado
Pura Semantic Overlay Network (SON)
Sobrecarga de troca de mensagens para
descoberta de novos pontos e buscas na rede
Super-Peer
Divisão e/ou fusão (coalesce) de clusters
CIn.ufpe.br CIn.ufpe.br
37 38

Roteamento – Flooding Roteamento – Modelo DHT


Problemas Tentativa de melhorar os algoritmos de roteamento dos
Excesso de mensagens sistemas P2P não-estruturados
Mensagens duplicadas Itens (arquivos) são distribuídos entre os pontos de
Valor ideal de TTL acordo com um algoritmo
TTL alto: sobrecarga na rede
Pontos não escolhem os itens à vontade
TTL baixo: nenhum resultado encontrado
Uso de replicação para garantir disponibilidade
Variações
Busca informada: uso de cache local
Busca informada com replicação
Aprofundamento iterativo: múltiplos valores
crescentes para TTL
CIn.ufpe.br CIn.ufpe.br
39 40

Roteamento – Modelo DHT Roteamento – Modelo DHT


Função hash
Mapeia um ponto em um identificador único Cada ponto é responsável por armazenar itens cujo
identificador é igual ou próximo ao identificador do
h(‘172.17.166.99’)  8400 ponto
Mapeia um item (arquivo) em um identificador
único
h(‘TutorialP2P.ppt’)  8045
Qualquer função aleatória de hash “boa” é
suficiente
Padrão SHA-1 (colisão praticamente impossível) Dado um identificador, um ponto deve ser capaz de
Faixa de resultados da função hash é distribuída pela encaminhar a consulta para o ponto cujo
rede identificador mais se aproxima
CIn.ufpe.br CIn.ufpe.br
41 42

7
Roteamento – Modelo DHT Roteamento – Modelo DHT
Para cada objeto, o(s) ponto(s) cuja faixa “cobre” o
objeto deve ser alcançável por um caminho “curto”
De qualquer outro ponto
Abordagens
Chord, CAN, Pastry, Tapestry, ...
Diferem na escolha do algoritmo de roteamento
(determina a geometria da rede)
Geometrias
Anel: Chord
Árvore: Pastry, Tapestry
XOR: Kademlia
Hipercubo: CAN Chord
Híbrida: Pastry (pode trabalhar como anel)
CIn.ufpe.br CIn.ufpe.br
43 44

Roteamento Roteamento - SON


Ineficiência de consultas no modelo de inundação Semantic Overlay Network
(escalabilidade) Virtual, abstrata, camada independente de
Consultas no modelo DHT pontos selecionado
Escalonável, porém “pobre”
Não permite
Consultas por aproximação
Consultas por faixa
Uma consulta deve ser enviada apenas para os pontos
aptos a respondê-la
Em geral, é possível representar o conteúdo
compartilhado por meio de ontologias
Música, filmes, artigos científicos, …
CIn.ufpe.br CIn.ufpe.br
45 46

Roteamento - SON Roteamento - SON


Pontos agrupados em clusters
Vantagens Overlap de clusters
Introduz visões semânticas sobre a rede Consultas enviadas apenas para clusters relevantes
física Clusters irrelevantes são descartados
Mediação e integração (correspondências,
reescrita de consultas)
Reduz a quantidade de mensagens na rede

CIn.ufpe.br CIn.ufpe.br
47 48

8
SON: Critérios para Definição da
Roteamento - SON Hierarquia
SON associada ao conceito de hierarquia de
classificação Documentos devem ser associados a conceitos
Exemplos para que o ponto seja associado a(s) SON
9 SON para classificação de músicas por estilo correspondente(s)
4 SON para classificação de músicas por ton Pontos devem possuir documentos em um número
reduzido de categorias
Música
Algoritmo de classificação eficiente
Estilos Música
Rock Jazz
Tons
Sub-estilos

Soft New Orlean


Warm Exciting Sweet
Dance Fusion

Pop Bop

CIn.ufpe.br CIn.ufpe.br
49 50

SON: Estratégias para Alocação de


Pontos Outras Propriedades de Sistemas P2P
Estratégia conservadora
Aloque um ponto em SONc, se o mesmo possui Autonomia
algum documento classificado no conceito c Um ponto não deve ter controle sobre os
recursos compartilhados por outro ponto
Anonimato
Produz muitos links
Capacidade do sistema ocultar a identificação do
Estratégia menos conservadora usuário
Aloque um ponto em SONc, caso o mesmo Descoberta de Recursos
possua uma quantidade de documentos
“significativa” classificado no conceito c Os pontos devem comunicar a disponibilidade de
recursos por meio de anúncios

Evita que sejam encontrados todos os documentos CIn.ufpe.br CIn.ufpe.br


51 52

Sistemas de Gerenciamento de Dados


Ponto-a-Ponto (PDMS)
Sistema de Gerenciamento de Dados
Com arquitetura descentralizada

PDMS Facilmente extensível


Na qual qualquer usuário pode contribuir
com
Peer Data Management System Novos dados
Novos esquemas
Mapeamentos entre os esquemas dos
pontos

CIn.ufpe.br CIn.ufpe.br
53 54

9
Sistemas de Gerenciamento de Dados Sistemas de Gerenciamento de Dados
Ponto-a-Ponto (PDMS) Ponto-a-Ponto (PDMS)
São uma evolução natural dos Sistemas de Integração Algumas características
de Dados Autonomia: controle sobre os dados locais
Substituindo seu único esquema lógico (mediação) Dinamismo: pontos e recursos podem entrar e
por uma coleção de mapeamentos semânticos entre sair a qualquer momento
os esquemas individuais de cada ponto Descentralização: cada ponto é independente
dos outros
Cooperação: compartilhamento de recursos e
serviços entre os pontos
Esquema local do BD: cada ponto tem seu
esquema (ausência de esquema global)
Dados: podem estar incompletos, indisponíveis
ou inconsistentes
CIn.ufpe.br CIn.ufpe.br
55 56

Sistemas de Gerenciamento de Dados


Arquitetura Genérica de um Ponto Ponto-a-Ponto (PDMS)
Gerenciamento de dados distribuídos
Ponto
Camada de Acesso aos Dados

Consulta
Local
Camada de Gerenciamento de Dados Compartilhamento de dados em larga escala
Interface com o Usuário

Camada de Rede P2P

Gerenciador
de Consultas Solução depende fortemente da topologia adotada
Consulta
Global
Gerenciador Rede P2P Impraticável a existência de esquema de mediação
de Atualizações
único
Resposta Gerenciador
de Cache

Ponto
Wrapper

Ponto
Cache de
Mapeamentos Fonte de
Dados
Semânticos Dados Local
Remotos
Ponto
[Sung et al. 2005]
CIn.ufpe.br CIn.ufpe.br
57 58

Problemas de um Esquema de Mediação Problemas de um Esquema de Mediação


Único Único
Conflito com as propriedades dos sistemas P2P
Conflito com as propriedades dos sistemas P2P
(Cont.)
Dinamismo Escalabilidade
Atualização do esquema de mediação a Onde armazenar um esquema de mediação
cada conexão e/ou desconexão único?
Autonomia Centralizado
Nem todos os pontos querem compartilhar Ponto único de falha
todos os dados Investimento em hardware e
conectividade
Distribuído
Técnicas para garantir uma visão
integrada do esquema de mediação
Esquema replicado: problemas de
armazenamento e consistência
CIn.ufpe.br CIn.ufpe.br
59 60

10
Pontos Positivos dos PDMS

Não existe esquema global


Manutenção
Mapeamentos definidos da forma mais conveniente
(pontos “próximos”)
Consultas são elaboradas de acordo com o
esquema do ponto
Resultados vêm de qualquer lugar do sistema
PDMS x Compartilhamento de Arquivos
Dados possuem semântica mais “rica”
Não são tão dinâmicos (conexão/desconexão)

CIn.ufpe.br
61

11

Você também pode gostar