Este documento descreve um sistema de preservação digital distribuído para armazenar dados de forma segura e a baixo custo. Ele discute a motivação, o serviço proposto baseado em replicação de dados em vários repositórios, a implementação do protótipo e conclusões.
2. Roteiro
● Motivação
● Serviço proposto
● Modelo de replicação
● Implementação e arquitetura do
sistema
● Protótipo no PlanetLab
● Conclusão
3. Motivação
Importância dos dados digitais
● Nossa herança cultural tem sido preservada em
muitos materiais diferentes, incluindo rocha,
couro, seda, papel e outros
● Hoje uma quantidade considerável de
informação está sendo produzida em formato
digital
● Curiosamente o meio digital é mais vulnerável
a deterioração que os meios convencionais
4. Motivação
Preservação digital
● Boa parte das instituições tem grande
dificuldade para preservar seus dados
● Dificuldades principais:
● Custos com hardware e infra-estrutura
● Ausência de pessoal especializado
● O volume de informação armazenada cresce
constantemente
5. Motivação
Preservação digital
● Redes de compartilhamento de arquivos Peer-
to-Peer não atendem os requisitos de
preservação digital pois previligiam conteúdo
popular
● Nuvens computacionais não oferecem as
garantias de longo prazo necessárias
● Além de considerar as falhas de hardware e
software é necessário considerar falhas
organizacionais e humanas
6. Serviço proposto
Objetivo
Oferecer um sistema de arquivamento digital
baseado em armazenamento distribuído
garantindo preservação de dados a baixo custo
por períodos de tempo indefinidamente longos
7. Serviço proposto
Algumas considerações importantes
● O sistema é baseado no modelo de federação
● Facilidade de adesão é importante
● Os dados são imutáveis
● Os servidores de armazenamento considerados são
tipicamente PCs com arrays de disco SATA
● Desempenho para recuperação dos dados não é uma
preocupação
● Heterogeneidade é desejável
8. Serviço proposto
Algumas considerações importantes
● O sistema é baseado no modelo de federação
● Facilidade de adesão é importante
● Os dados são imutáveis
● Os servidores de armazenamento considerados são
tipicamente PCs com arrays de disco SATA
● Desempenho para recuperação dos dados não é uma
preocupação
● Heterogeneidade é desejável
9. Serviço proposto
Requisitos para implementação
● O sistema deve ser o menos intrusivo possível
● Evitar sobrecargas, especialmente em disco
● Utilização de ferramentas e protocolos com
implementações seguras e amplamente disponíveis
● Instalável em uma grande variedade de plataformas
10. O Modelo
Modelo de replicação
● Conjunto de repositórios (computadores
executando o sistema) distribuídos
geograficamente
● Repositórios podem ser desde servidores de
alta-disponibilidade instalados em centros de
dados até desktops comuns
● A unidade de preservação é um item ou
objeto digital
11. O Modelo
Definições do modelo
● Uma métrica de confiabilidade é associada a
cada repositório
● Cada item é armazenado com uma
confiabilidade desejada que reflete a
importância do item
● Para atender a confiabilidade desejada para
um item, réplicas são criadas nos repositórios
13. Auditoria
O processo de auditoria
● Réplicas podem ser perdidas durante o tempo
● É necessário verificar periodicamente a
existência destas réplicas
● Quanto maior o número de auditorias maior a
confiabilidade obtida
● Entretanto esse intervalo de tempo não pode ser pequeno
14. Implementação do Protótipo
Implementação
● Repositórios são PC rodando alguma
distribuição Linux
● Uso de ferramentas padrão do sistema
● Bash scripts, linguagem C e Java
● Software Livre GPL
16. Implementação
Camada de Armazenamento
● Responsável pelo armazenamento das réplicas
dos objetos digitais
● São implementadas as operações de
transferência de objetos digitais entre
repositórios (replicação) e de verificação
periódica da integridade do conteúdo das
réplicas
● Secure Shell (SSH) e Rsync
17. Implementação
Camada de Gerenciamento
● Responsável por gerenciar os objetos do
repositório para garantir os níveis de
confiabilidade
● Inserção, auditoria, recuperação e consulta de
objetos
18. Implementação
Estratégia para seleção de réplicas
● Escolhemos aleatoriamente um conjunto de
repositórios candidatos a armazenar as réplicas
de um determinado item
● Para este conjunto de repositórios, calculamos o
intervalo de auditoria necessário para atingir a
confiabilidade desejada
● O intervalo de auditoria mínimo é configurado
pelo administrador local do sistema
24. Implementação
Camada da Interface
● A padronização da comunicação entre as
aplicações e a camada de gerenciamento é
realizada por um serviço web
● Web Service (SOAP, WSDL, Java)
● Inserir, consultar e recuperar
25. Implementação
Camada de Aplicações
● Diversas aplicações podem necessitar ou desejar
um serviço de preservação
● Usuário pode inserir, consultar e recuperar seus
arquivos
● Escolhemos o Dspace (sistema de biblioteca
digitais utilizado por mais de 1000 instituições)
26. Implementação
Camada de Aplicações
● Diversas aplicações podem necessitar ou desejar
um serviço de preservação
● Usuário pode inserir, consultar e recuperar seus
arquivos
● Escolhemos o Dspace (sistema de biblioteca
digitais utilizado por mais de 1000 instituições)
27. Protótipo no Planetlab
O Ambiente
● Rede formada por milhares de computadores
espalhados pelo planeta
● Nodos do slice estão quase sempre
sobrecarregados
● Em muitos casos podemos dizer que as
condições oferecidas são piores que a realidade
28. Protótipo no Planetlab
Avaliação
● A implantação no Plab obrigou a refinar a
implementação tornando o sistema mais
robusto
● Devemos ampliar o número de repositórios no
futuro próximo
● E utilizar essa rede para preservar o acervo dos
100 anos da UFPR
29. Protótipo no Planetlab
Avaliação
● Principais funcionalidades estão implementadas
● As decisões iniciais de projetos se mostraram
acertadas
● Existe um bom número de interessados em
utilizar o sistema
30. Protótipo no Planetlab
Implementação
Avaliação
● Principais funcionalidades estão implementadas
● As decisões iniciais de projetos se mostraram
acertadas
● Dissertações e TCC também foram produzidos
● Existe um bom número de interessados em
utilizar o sistema
31. Protótipo no Planetlab
Para uma nova fase
● Estimar a confiabilidade de cada repositório
● Compartilhamento das chaves SSH
● Sistema de Indexação
● Controle do consumo de recursos
● Ferramentas para operação do serviço
● O modelo de governança a ser adotado
32. Conclusão e Trabalhos Futuros
● O problema atacado é relevante
● O modelo parece adequado e o protótipo mostra
a viabilidade prática do serviço
● Integrar mais nodos do PlanetLab e também
● Fase de “acabamento” do projeto: versão final
da documentação, novo site, etc.