Upload
kevin-modesto
View
216
Download
3
Embed Size (px)
Citation preview
BACKUP DISTRIBUÍDOTecnologias envolvidas
AGENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar consistência dos blocos Confiabilidade e replicação de dados Papel do servidor
SISTEMAS DE BACKUP P2PPRINCIPAIS SISTEMAS
PeerStore Landers, M., Zhang, H., and Tan, K. PeerStore: better
performance by relaxing in peer-to-peer backup. Proceedings of the Fourth International Conference on Peer-to-Peer Computing, (2004), 72-79.
pStore Batten, C., Barr, K., Saraf, A., and Trepetin, S. pStore: A secure
peer-to-peer backup system. Unpublished report, MIT Laboratory for Computer Science, (2001), 130-139.
Pastiche Cox, L., Murray, C., and Noble, B. Pastiche: Making backup cheap
and easy. ACM SIGOPS Operating Systems Review 36, (2002), 285-298.
OurBackup M. Oliveira. OurBackup: A P2P backup solution based on social
networks, MSc Thesis, Universidade Federal de Campina Grande, Brazil, 2007.
DHT - DISTRIBUTED HASH TABLES Motivado por sistemas como Napters (2001†) e
Gnutela Proposta: localização dos nós
Dada uma determinada chave retornar um nó Pode ser usado para criação de
Sistemas de arquivos distribuídos Compartilhamento de arquivos Distribuição de arquivo
Quatro primeiras implementações em 2001 Chord – Escrito em C Pastry / FreePastry – Escrito em Java CAN Tapestry
EXEMPLO DE DHT: CHORD Se preocupa apenas com a localização de
nós É utilizado uma variação do consistent
hashing Karger, D., Lehman, E., Leighton, F., Levine, M., Lewin, D., and Panigrahy, R.
Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web. 29th Annual ACM Symposium on Theory of Computing, (1997), 654-663
Um nó não precisa conhecer todos os outros Necessário ter uma referência valida para
sucesso Armazenamento de dados é feito em outra
camada Flexibilidade para o nome das chaves
EXEMPLOS DE DHT Estudos sobre os modelos de DHT
disponíveis:
Balakrishnan H, Kaashoek MF, Karger D, Morris R, Stoica I. Looking up data in P2P systems. Communications of the ACM. 2003;46(2):43.
http://portal.acm.org/citation.cfm?doid=606272.606299.
SEGMENTAÇÃO DE ARQUIVOS Redução de trafego / aumento no
desempenho Possibilidade de versionamento (snapshots) Sugerido pelo pStore, LBFS e PeerStore Arquivo quebrado em blocos e metadado
Âncoras e Rabin fingerprint
SEGMENTAÇÃO DE ARQUIVOS (CONTINUAÇÃO)
Ilustração proposta pelo pStore
SEGURANÇA E COMPARTILHAMENTO O ID de um bloco é calculado usando:
ID = h(h(c)) c é o conteúdo do bloco (chunk)
Modelo sugerido pelo Pastiche A chave para criptografia é gerada a partir do
Hc
A lista dos Hc é guardada no metadado
SEGURANÇA E COMPARTILHAMENTO (CONTINUAÇÃO)
Modelo sugerido pelo PeerStore
VERIFICAR CONSISTÊNCIA DOS BLOCOS Garantir que um peer realmente está
armazenando os dados a que se propõe Modelo sugerido pelo PeerStore Enviar apenas o valor h0 e uma lista dos n
blocos Esperar pelo valor hn
CONFIABILIDADE E REPLICAÇÃO DE DADOS No backup, é probabilidade de recuperar
uma determinada informação em caso de falha do sistema
Aumentamos a probabilidade aumentando a quantidade de cópias (k)
Essa probabilidade total pode ser calculada através do somatória das probabilidades de um nó falhar, dois nós falharem, e assim por diante. Então:
CONFIABILIDADE E REPLICAÇÃO DE DADOS (CONTINUAÇÃO)
Resultados obtidos aplicando a fórmula:
PAPEL DO SERVIDOR Gerenciamento de usuários Armazenamento de metadados Controle de redes sociais Sistemas como OurGrid também usam para
Localização dos nós Manipulação dos dados
A centralização pode apresentar problemas de escalabilidade, porém sistema como o Napster se mostraram bastante eficientes