B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação...

15
BACKUP DISTRIBUÍDO Tecnologias envolvidas

Transcript of B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação...

Page 1: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

BACKUP DISTRIBUÍDOTecnologias envolvidas

Page 2: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 3: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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.

Page 4: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 5: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 6: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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.

Page 7: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 8: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

SEGMENTAÇÃO DE ARQUIVOS (CONTINUAÇÃO)

Ilustração proposta pelo pStore

Page 9: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 10: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

SEGURANÇA E COMPARTILHAMENTO (CONTINUAÇÃO)

Modelo sugerido pelo PeerStore

Page 11: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 12: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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:

Page 13: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

CONFIABILIDADE E REPLICAÇÃO DE DADOS (CONTINUAÇÃO)

Resultados obtidos aplicando a fórmula:

Page 14: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.

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

Page 15: B ACKUP DISTRIBUÍDO Tecnologias envolvidas. A GENDA DHT – Distributed Hash Tables Segmentação de arquivos Segurança e compartilhamento de blocos Verificar.