modcs – modeling of distributed and concurrent systems wfs um sistema de arquivos fuse-linux...
TRANSCRIPT
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
WFSUm Sistema de Arquivos FUSE-Linux Baseado na Um Sistema de Arquivos FUSE-Linux Baseado na
Política Write-Once Read-ManyPolítica Write-Once Read-Many
Tiago Falcão <[email protected]>Ermeson Andrade, Rubens Matos, Paulo Maciel (UFPE)Stephen Worth, Paul Malenfant (EMC Corporation)
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Contextualização
• Write-Once Read-Many File System
• Público-alvo
• Requisitos do sistema
• Funcionalidades
• Avaliação de Desempenho (Benchmark Bonnie)
• Ajustes de parâmetros
• Comparação entre o WFS e o Ext3
• Referências
Agenda
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Em 2009, 36% das casas brasileiras possuiam computadores e 27% Internet
• Armazenamento de dados (músicas, exames médicos, documentos fiscais, etc.) nos computadores
• Write-Once Read-Many (WORM)• Técnica amplamente utilizada por corporações
• Evitar os riscos de deleções e modificações de conteúdo
Contextualização
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
Desenvolver um sistema de arquivos baseado na política Write-Once Read-Many voltado para ambientes
Linux
Desafio
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Usuários residenciais Linux• Possivelmente sem privilégio de administrador
• Armazenamento de dados em disco rígido
• Redução do risco de deleções involuntárias de conteúdo
• Utilização de hardware de baixo custo
Público-Alvo
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Características WORM • Permissão de criação de conteúdo
• Proibição de remoção e de modificação dos dados
• Código aberto• Utilização gratuita por parte de usuários residenciais
• GPLv3 (não comercial)
• Atender a usuários sem privilégios
• Facilidade de instalação e de configuração
Requisitos do Sistema
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Apresentar desempenho satisfatório
• Possibilitar forma alternativa de modificação e de remoção
• Simplicidade no gerenciamento de conteúdo• Sempre permitir leitura e criação de novos arquivos
• A interferência do administrador do sistema deve ser evitada
Requisitos do Sistema
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
WFS: Um Sistema de Arquivos FUSE Baseado na Política Write-Once Read-Many
Solução
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Sistema de Arquivos Virtual• Implementação da API do Filesystem in Userspace (FUSE)
• Portabilidade entre sistemas operacionais
• Utilização por usuários sem privilégios de administração
• Abstração das operações de baixo nível
• Características WORM• Os arquivos e diretórios podem ser criados, mas não
podem ser renomeados ou removidos
• Operações de Superusuário não são permitidas• Sudo, chmod, chown, etc..
Write-Once Read-Many File System
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Requisitos:• FUSE instalado
• Compilação:
• Montagem:
WFS: Instalação
> gcc -o wfs -Wall -ansi -W -std=c99 -g -ggdb -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -lfuse WFS.c
> ./wfs -o direct_io readwrite_directory WORM_mount_point
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• API definida pelo FUSE• Linguagem C
• Todas as 26 funções foram implementadas
• Mecanismo de Trace• Rastreamento
• Depuração de código-fonte
WFS: Implementação
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
Características WORM associadas às funções
getattr(): proíbe modificação de conteúdo
create(), mkdir(): criação de conteúdo, se não existir
open(): proíbe remoção e abertura de arquivo em modo escrita
access(): proíbe acesso a arquivos em modo escrita
rmdir(), unlink(), rename(), chmod(), chown(): operações
retornam erros de falta de permissão
WFS: Implementação
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
Avaliação de DesempenhoWorkload BonnieWorkload Bonnie
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Adaptação do Workload Bonnie• Redirecionamento de operações de reescrita para outro
arquivo
• Remoção do código responsável por apagar os arquivos após o encerramento dos testes
• Arquivos de 10 MB e 1000 MB• 30 repetições para cada cenário de teste
• Ambiente livre de interferência relevante• Dell Vostro 1500 com processador Intel Core 2 Duo 2,20
GHz, 2,5 GB de RAM, 160 GB de HD IDE e Sistema Operacional GNU/Linux – Distribuição Ubuntu 9.04.
Workload e Ambiente
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• 4 Fatores de configuração selecionados• Fatores nomeados na sequência: A, B, C, D
• 16 cenários de teste (24)
• Qual cenário minimiza a perda de performance do WFS?
• Efeitos e relevâncias dos fatores e suas interações foram calculados
Experimento Fatorial Completo
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
Arquivos de 10MBMelhores cenários:
Parâmetros A e D ligados (1001)
Experimento Fatorial Completo (Resultados)
Arquivos de 1000MBMelhores cenários:
Parâmetro A ligado (1000)
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Discreta perda de desempenho
• Arquivos de 10 MB: Ext3 é 5,5% mais rápido do que o WFS
• Para arquivos de 1000 MB, a diferença é inferior a 12%
Comparação com o Ext3
Sistema de Arquivos Arquivos de 10 MB Arquivos de 1000 MBMédia (s) DP (s) Média (s) DP (s)
Ext3 5,79 0,36 122,63 1,91WFS 6,14 0,16 139,5 2,28
Resultados de tempo de execução do workload Bonnie
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Sistema de arquivos com características WORM
• Evita deleções e modificações indesejáveis
• Permite apenas criação de conteúdo
• Código-Livre
• Foco em usuário residencial Linux
• Não necessita de privilégios de administrador
• Nem de investimentos em hardware de alto custo
Conclusão e Trabalhos Futuros
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
• Apresenta discreta perda de desempenho em relação
ao Ext3 não-WORM
• Habilitando os parâmetros de Direct I/O
• Trabalhos Futuros:
• Técnicas para prover maiores garantias de integridade aos
dados serão adicionadas ao WFS
• Desenvolvimento de um WFS-Kernel
• Segurança, integridade, tolerância a falhas etc.
Conclusão e Trabalhos Futuros
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
Artigos Publicados
• T. Falcao, E. Andrade, R. Matos, R. Ferraz, P. Maciel, S. Worth, and P. Malenfant. Otimização do Desempenho de um Sistema de Arquivos FUSE-Linux Baseado na Política Write-Once Read-Many. Conferência Latino-americana de Informática, 2010.
• T. Falcao, E. Andrade, R. Matos, P. Maciel, S. Worth, and P. Malenfant. WFS: Um Sistema de Arquivos FUSE-Linux Baseado na Política Write-Once Read-Many. Workshop de Software Livre, 2010
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
ObjectiveDúvidas e Sugestões
????
MoDCS – Modeling of Distributed and Concurrent Systems <www.modcs.org>
WFSUm Sistema de Arquivos FUSE-Linux Baseado na Um Sistema de Arquivos FUSE-Linux Baseado na
Política Write-Once Read-ManyPolítica Write-Once Read-Many
Tiago Falcão <[email protected]>Ermeson Andrade, Rubens Matos, Paulo Maciel (UFPE)Stephen Worth, Paul Malenfant (EMC Corporation)