Sistemas de Arquivos Paralelos Alternativas para a reduo

  • Slides: 40
Download presentation
Sistemas de Arquivos Paralelos Alternativas para a redução do gargalo no acesso ao sistema

Sistemas de Arquivos Paralelos Alternativas para a redução do gargalo no acesso ao sistema de arquivos Roberto Pires de Carvalho carvalho arroba ime ponto usp ponto br Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo

Agenda • • Motivação e objetivos Sistemas de arquivos distribuídos Sistemas de arquivos paralelos

Agenda • • Motivação e objetivos Sistemas de arquivos distribuídos Sistemas de arquivos paralelos PVFS 2 vs. Ext 3 2

Motivação • Velocidades de acesso e transmissão de dados a partir de discos não

Motivação • Velocidades de acesso e transmissão de dados a partir de discos não evoluíram tanto quanto rede, processador e memória. 3

Motivação • Os sistemas de arquivos distribuídos (SADs), embora sejam mais populares, sacrificam desempenho

Motivação • Os sistemas de arquivos distribuídos (SADs), embora sejam mais populares, sacrificam desempenho para disponibilizar qualidade de serviço, como por exemplo: – – Controle de acesso e segurança; Alta disponibilidade; Tolerância a falhas; Transparência no acesso. 4

Objetivos • Diferenciar sistemas de arquivos paralelos e distribuídos; • Descrever em detalhes alguns

Objetivos • Diferenciar sistemas de arquivos paralelos e distribuídos; • Descrever em detalhes alguns sistemas de arquivos; • Mostrar alguns testes de desempenho; • Comparar o PVFS 2 com o sistema de arquivos local. 5

Sistemas de Arquivos Distribuídos Características: • Espaço de nomes único para o usuário, mesmo

Sistemas de Arquivos Distribuídos Características: • Espaço de nomes único para o usuário, mesmo que distribuído entre os servidores; • Visão do sistema de arquivos como uma unidade; • Preocupação com a qualidade do serviço oferecido. 6

Sistemas de Arquivos Distribuídos Principais vantagens: • Facilidade na manutenção e administração; • Simplicidade

Sistemas de Arquivos Distribuídos Principais vantagens: • Facilidade na manutenção e administração; • Simplicidade no uso; • Visão única entre os clientes. Principais desvantagens: • Não são muito eficientes no acesso concorrente ou simultâneo; • Nem sempre são escaláveis. 7

Sistemas de Arquivos Distribuídos Alguns exemplos: • • NFS; AFS; CODA; SPRITE. 8

Sistemas de Arquivos Distribuídos Alguns exemplos: • • NFS; AFS; CODA; SPRITE. 8

Sistemas de Arquivos Paralelos Características: • Alto desempenho no acesso aos dados de forma

Sistemas de Arquivos Paralelos Características: • Alto desempenho no acesso aos dados de forma concorrente, seja no mesmo disco, no mesmo arquivo ou em uma parte dele; • Pouca preocupação quanto à segurança dos dados, disponibilidade dos arquivos e tolerância a falhas dos discos e servidores; • Acesso paralelo aos dados usa biblioteca específica com funções de alto desempenho; • Uso praticamente acadêmico e em pesquisas onde alto desempenho é crítico. 9

Sistemas de Arquivos Paralelos Principais vantagens: • Melhor desempenho no acesso concorrente e simultâneo;

Sistemas de Arquivos Paralelos Principais vantagens: • Melhor desempenho no acesso concorrente e simultâneo; • Diminuição da latência; • Aumento da vazão e da escalabilidade. Principais desvantagens: • Aumento da vazão implica em aumento do uso da rede; • Pouca preocupação quanto à segurança dos dados; • Acesso às funções de alto desempenho diminuem transparência no acesso. 10

Sistemas de Arquivos Paralelos Alguns exemplos: • BRIDGE; • PVFS 2; • NFSP; •

Sistemas de Arquivos Paralelos Alguns exemplos: • BRIDGE; • PVFS 2; • NFSP; • CEFT-PVFS; • GFS. 11

PVFS Características: • Apresentado em 1996; • Desenvolvido para Linux, com código-fonte aberto; •

PVFS Características: • Apresentado em 1996; • Desenvolvido para Linux, com código-fonte aberto; • Alto desempenho em espaço de usuário no acesso concorrente e simultâneo aos arquivos; • Acesso transparente para as ferramentas já existentes; • Distribuição física dos dados entre os múltiplos nós. • Pouca segurança nas permissões de acesso; • Não possui tolerância a falhas. 12

PVFS Componentes: • Servidor único de meta-dados; • Múltiplos servidores de dados; • Modos

PVFS Componentes: • Servidor único de meta-dados; • Múltiplos servidores de dados; • Modos de acesso: – Via API nativa do PVFS (biblioteca); – Via módulo para o núcleo do Linux, que acessa a biblioteca PVFS e proporciona acesso transparente para aplicações já existentes, a um baixo custo de desempenho. 13

PVFS Fluxo dos dados: 1. Cliente procura por informações sobre o arquivo (meta-dados). 2.

PVFS Fluxo dos dados: 1. Cliente procura por informações sobre o arquivo (meta-dados). 2. Sabendo-se onde encontrá-lo, pede o conteúdo do arquivo diretamente ao servidor de dados. 14

PVFS – Desempenho 15

PVFS – Desempenho 15

PVFS 2 Algumas diferenças com relação ao PVFS 1: • • Iniciado em 2003

PVFS 2 Algumas diferenças com relação ao PVFS 1: • • Iniciado em 2003 e foi lançado em 2004; Arquitetura modular; Protocolo de rede modular (BMI); Métodos de armazenamento físico dos dados modular (Trove); Aceita outros algoritmos de distribuição de dados, e não somente round-robin; Permite múltiplos servidores de meta-dados; Pode-se configurar em quais nós armazenar algum arquivo; Suporte a redundância de dados. 16

NFSP Características: • Apresentado em 2002; • Modificação nos servidores PVFS para dar suporte

NFSP Características: • Apresentado em 2002; • Modificação nos servidores PVFS para dar suporte ao protocolo de comunicação do NFSv 2 (RFC 1094); • Clientes NFS comuns podem acessá-lo de forma transparente; • Distribuição dos dados entre servidores; • Implementação inicial de redundância de dados; • Distribuição da carga entre os servidores de dados ao se utilizar de redundância. 17

NFSP – Desempenho 18

NFSP – Desempenho 18

CEFT-PVFS Características: • Apresentado em 2003; • Modificação no PVFS para permitir dividir servidores

CEFT-PVFS Características: • Apresentado em 2003; • Modificação no PVFS para permitir dividir servidores em dois grupos: primário e secundário; • Replicação dos dados; • Tolerância a falhas; • Distribuição de carga. 19

CEFT-PVFS – Desempenho 20

CEFT-PVFS – Desempenho 20

Nossa Proposta • Mostrar que um SAP pode ser mais eficiente que um sistema

Nossa Proposta • Mostrar que um SAP pode ser mais eficiente que um sistema de arquivos local, sob mesmas condições, ao acessar muitos dados, de forma concorrente e simultânea. 21

Nossa Estratégia 22

Nossa Estratégia 22

PVFS 2 vs. Ext 3 – Testes Ambiente: • Rede conectada a 100 MBits/s;

PVFS 2 vs. Ext 3 – Testes Ambiente: • Rede conectada a 100 MBits/s; • Máquinas com configuração homogênea: Athlon 1. 2 GHz, 768 MB de RAM, 16 GB de espaço livre em disco IDE Ultra ATA/133, 7200 RPM; • Kernel do Linux na versão 2. 6. 10. 23

PVFS 2 vs. Ext 3 – Testes Leitura: • Caches dos servidores e cliente

PVFS 2 vs. Ext 3 – Testes Leitura: • Caches dos servidores e cliente limpos; • Leitura de apenas um arquivo de tamanho específico por várias threads; • Cada thread lê uma região distinta, de tamanho fixo, de forma seqüencial. Escrita: • Cada thread gera um arquivo específico, de forma seqüencial, com dados aleatórios; • Todos os arquivos têm o mesmo tamanho. 24

PVFS 2 vs. Ext 3 – Testes Variáveis: • • Tamanho do arquivo: de

PVFS 2 vs. Ext 3 – Testes Variáveis: • • Tamanho do arquivo: de 1 MB a 1 GB; Tamanho do bloco de dados: de 1 KB a 1 MB; Quantidade de threads usadas: de 1 a 32; Velocidade dos discos ajustada através da ferramenta hdparm para variar o modo PIO de 0 a 3; • Escrita com e sem sincronização (flush). 25

Velocidades dos Discos por Modo PIO 26

Velocidades dos Discos por Modo PIO 26

Resultados – Leitura • Tamanho do bloco de leitura não influencia o desempenho de

Resultados – Leitura • Tamanho do bloco de leitura não influencia o desempenho de ambos os sistemas. Ext 3 PVFS 2 com 8 nós 27

Resultados – Leitura • Tamanho do arquivo não afeta desempenho do Ext 3; •

Resultados – Leitura • Tamanho do arquivo não afeta desempenho do Ext 3; • Porém afeta desempenho do PVFS 2 para arquivos pequenos com mais de 1 thread. Ext 3 PVFS 2 com 8 nós 28

Resultados – Leitura • Aumentar a quantidade de servidores PVFS 2 nos dá: –

Resultados – Leitura • Aumentar a quantidade de servidores PVFS 2 nos dá: – – – Maior velocidade agregada de transferência de dados; Maior quantidade de memória cache; Maior espaço de armazenamento disponibilizado; Suporte a uma quantidade crescente de clientes; Desempenho do PVFS 2 superior ao Ext 3. 29

Resultados – Leitura • Sem acesso concorrente, PVFS 2 com 2 ou mais servidores

Resultados – Leitura • Sem acesso concorrente, PVFS 2 com 2 ou mais servidores é mais rápido que Ext 3. 1 thread 30

Resultados – Leitura • Ao aumentarmos a velocidade dos discos percebemos que: – Desempenho

Resultados – Leitura • Ao aumentarmos a velocidade dos discos percebemos que: – Desempenho do Ext 3 está diretamente ligado ao disco; – Desempenho do PVFS 2 não aumenta proporcionalmente. 1 thread 32 threads 31

Resultados – Escrita • • Tamanho do bloco de escrita não influencia no resultado;

Resultados – Escrita • • Tamanho do bloco de escrita não influencia no resultado; Tamanho do arquivo afeta desempenho do Ext 3; PVFS 2 não é afetado pelo cache por não possuí-lo; Forçar escrita usando flush não mudou resultado. Ext 3 PVFS 2 com 8 nós 32

Resultados – Escrita • Ao aumentarmos a quantidade de servidores e a concorrência, escrita

Resultados – Escrita • Ao aumentarmos a quantidade de servidores e a concorrência, escrita no PVFS 2 e no Ext 3 se comporta como a leitura. 33

Resultados – Escrita • Sem acesso concorrente, o PVFS 2 com 2 ou mais

Resultados – Escrita • Sem acesso concorrente, o PVFS 2 com 2 ou mais servidores ganha do Ext 3 também na escrita, para uma quantidade suficiente de dados. 34

Resultados – Escrita • Ao aumentarmos a velocidade dos discos, temos um resultado similar

Resultados – Escrita • Ao aumentarmos a velocidade dos discos, temos um resultado similar aos testes de leitura. 1 thread 32 threads 35

PVFS 2 vs. Ext 3 – Conclusões Para PVFS 2, rede rápida é mais

PVFS 2 vs. Ext 3 – Conclusões Para PVFS 2, rede rápida é mais importante que discos rápidos Leitura com 32 threads 36

PVFS 2 vs. Ext 3 – Conclusões PVFS 2 não aproveita velocidade agregada de

PVFS 2 vs. Ext 3 – Conclusões PVFS 2 não aproveita velocidade agregada de forma linear 1 thread 32 threads 37

PVFS 2 vs. Ext 3 – Conclusões PVFS 2 utiliza somente 92% da banda

PVFS 2 vs. Ext 3 – Conclusões PVFS 2 utiliza somente 92% da banda da rede (média 11, 5 MB/s) • Se disco é 8% mais lento que a rede, PVFS 2 e Ext 3 “empatariam”. PVFS 2 é mais rápido que Ext 3 em rede Ethernet 1000 Base-T? • Se discos possuem velocidade média de 28 MB/s: – – – • Similar aos testes com modo PIO 0; PVFS 2 com 8 servidores; 32 threads clientes; Aproveitamento do PVFS 2 seria de ~49%; Resultado: 28 x 49% = 109 MB/s. Se discos possuem velocidade média de 68 MB/s: – – – Similar aos testes com modo PIO 3; Usando PVFS 2 com 8 servidores; 32 threads clientes; Aproveitamento do PVFS 2 seria de ~20%; Resultado: 68 x 20% = 109 MB/s. 38

Trabalhos Futuros • Testes comparativos no acesso e manipulação de arquivos grandes entre PVFS

Trabalhos Futuros • Testes comparativos no acesso e manipulação de arquivos grandes entre PVFS 2 e Ext 3 em uma rede Gigabit; • Analisar, discutir e explicar os resultados encontrados; • Preparar um artigo com os resultados para o Simpósio Brasileiro de Redes de Computadores (SBRC) de 2006. 39

Obrigado a todos! Questões? 40

Obrigado a todos! Questões? 40