sistemas de arquivos paralelos alternativas para a redução do gargalo no acesso ao sistema de...
Post on 07-Apr-2016
214 Views
Preview:
TRANSCRIPT
Sistemas de Arquivos Paralelos
Alternativas para a redução do gargalo no acesso ao sistema de arquivos
Roberto Pires de Carvalhocarvalho arroba ime ponto usp ponto br
Departamento de Ciência da ComputaçãoInstituto de Matemática e Estatística
Universidade de São Paulo
2
Agenda
• Motivação e objetivos• Sistemas de arquivos distribuídos• Sistemas de arquivos paralelos• PVFS2 vs. Ext3
3
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.
0
1
2
3
4
5
6
7
8
1986
1994
1996
1997
1998
1999
2000
2001
2002
2003
2004
Tempo
Evo
luçã
o
HDD (banda)HDD (latência)Rede (banda)Processador (freq.)Processador (banda)
4
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.
5
Objetivos
• Diferenciar sistemas de arquivos paralelos e distribuídos;
• Descrever em detalhes alguns sistemas de arquivos;
• Mostrar alguns testes de desempenho;• Comparar o PVFS2 com o sistema de
arquivos local.
6
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.
7
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.
8
Sistemas de Arquivos Distribuídos
Alguns exemplos:• NFS;• AFS; • CODA;• SPRITE.
9
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.
10
Sistemas de Arquivos ParalelosPrincipais 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.
11
Sistemas de Arquivos Paralelos
Alguns exemplos:• BRIDGE;• PVFS;• PVFS2;• NFSP;• CEFT-PVFS;• GFS.
12
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.
13
PVFSComponentes:• 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.
14
PVFSFluxo dos dados:
1. Cliente procura por informaçõessobre o arquivo (meta-dados).
2. Sabendo-se onde encontrá-lo,pede o conteúdo do arquivodiretamente ao servidor de dados.
15
PVFS – Desempenho
16
PVFS2
Algumas diferenças com relação ao PVFS1:• 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.
17
NFSP
Características:• Apresentado em 2002;• Modificação nos servidores PVFS para dar
suporte ao protocolo de comunicação do NFSv2 (RFC1094);
• 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.
18
NFSP – Desempenho
19
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.
20
CEFT-PVFS – Desempenho
21
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.
22
Nossa Estratégia
23
PVFS2 vs. Ext3 – Testes
Ambiente:• Rede conectada a 100MBits/s;• Máquinas com configuração
homogênea: Athlon 1.2GHz, 768MB de RAM, 16GB de espaço livre em disco IDE Ultra ATA/133, 7200RPM;
• Kernel do Linux na versão 2.6.10.
24
PVFS2 vs. Ext3 – 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.
25
PVFS2 vs. Ext3 – Testes
Variáveis:• Tamanho do arquivo: de 1MB a 1GB;• Tamanho do bloco de dados: de 1KB a 1MB;• 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).
26
Velocidades dos Discos por Modo PIO
0,00
5,00
10,00
15,00
20,00
25,00
30,00
35,00
40,00
Servidores
Vel
ocid
ade
Méd
ia d
e Le
itura
(MB
/s)
PIO 4 35,50 35,51 24,35 35,57 34,94 35,51 35,53 33,85 35,50 35,47
PIO 3 6,83 6,80 6,83 6,83 6,82 6,81 6,83 6,83 6,84 6,81
PIO 2 6,17 6,16 6,17 6,19 6,18 6,18 6,19 6,18 6,19 6,17
PIO 1 4,14 4,13 4,14 4,14 4,14 4,14 4,15 4,15 4,15 4,14
PIO 0 2,83 2,82 2,83 2,83 2,83 2,83 2,82 2,83 2,83 2,83
Cliente Meta-Dados Dados 1 Dados 2 Dados 3 Dados 4 Dados 5 Dados 6 Dados 7 Dados 8
27
Resultados – Leitura
• Tamanho do bloco de leitura não influencia o desempenho de ambos os sistemas.
0
0,5
1
1,5
2
2,5
3
1 4 16 64 256 1024
Tamanho do bloco de leitura (KB)
Vel
ocid
ade
(MB
/s) 1 Thread
2 Threads4 Threads8 Threads16 Threads32 Threads
0
2
4
6
8
10
12
1 4 16 64 256 1024
Tamanho do bloco de leitura (KB)
Vel
ocid
ade
(MB
/s) 1 Thread
2 Threads4 Threads8 Threads16 Threads32 Threads
Ext3 PVFS2 com 8 nós
28
Resultados – Leitura
• Tamanho do arquivo não afeta desempenho do Ext3;• Porém afeta desempenho do PVFS2 para arquivos
pequenos com mais de 1 thread.
0
0,5
1
1,5
2
2,5
3
1 2 4 8 16 32 64 128
256
512
1024
Quantidade de Dados Lidos (MB)
Vel
ocid
ade
(MB
/s) 1 thread
2 threads4 threads8 threads16 threads32 threads
0
2
4
6
8
10
12
1 2 4 8 16 32 64 128
256
512
1024
Quantidade de Dados Lidos (MB)
Vel
ocid
ade
(MB
/s)
1 thread2 threads4 threads8 threads16 threads32 threads
Ext3 PVFS2 com 8 nós
29
Resultados – Leitura
• Aumentar a quantidade de servidores PVFS2 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 PVFS2 superior ao Ext3.
0
2
4
6
8
10
12
1 2 4 8 16 32
Quantidade de Threads
Vel
ocid
ade
(MB
/s)
Ext3PVFS 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
-50%
0%
50%
100%
150%
200%
250%
300%
350%
1 2 4 8 16 32
Quantidade de Threads
Gan
ho s
obre
Ext
3
PVFS 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
30
Resultados – Leitura
• Sem acesso concorrente, PVFS2 com 2 ou mais servidores é mais rápido que Ext3.
0
1
2
3
4
5
6
7
8
9
1 2 4 8 16 32 64 128
256
512
1024
Quantidade de Dados Lidos (MB)
Vel
ocid
ade
(MB
/s)
Ext3PVFS 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
1 thread
31
Resultados – Leitura
• Ao aumentarmos a velocidade dos discos percebemos que:– Desempenho do Ext3 está diretamente ligado ao disco;– Desempenho do PVFS2 não aumenta proporcionalmente.
0
2
4
6
8
10
12
0,00 2,00 4,00 6,00 8,00
Velocidade dos Discos (MB/s)
Vel
ocid
ade
Obt
ida
(MB
/s)
Ext3PVFs 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
0
2
4
6
8
10
12
0,00 2,00 4,00 6,00 8,00
Velocidade dos Discos (MB/s)
Vel
ocid
ade
Obt
ida
(MB
/s)
Ext3PVFs 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
1 thread 32 threads
32
Resultados – Escrita
• Tamanho do bloco de escrita não influencia no resultado;• Tamanho do arquivo afeta desempenho do Ext3;• PVFS2 não é afetado pelo cache por não possuí-lo;• Forçar escrita usando flush não mudou resultado.
0
5
10
15
20
25
1 2 4 8 16 32 64 128
256
512
1024
Quantidade de Dados Escritos (MB)
Vel
ocid
ade
(MB
/s)
1 thread2 threads4 threads8 threads16 threads32 threads
0
2
4
6
8
10
12
1 2 4 8 16 32 64 128
256
512
1024
Quantidade de Dados Escritos (MB)
Vel
ocid
ade
(MB
/s) 1 thread
2 threads4 threads8 threads16 threads32 threads
Ext3 PVFS2 com 8 nós
33
Resultados – Escrita
• Ao aumentarmos a quantidade de servidores e a concorrência, escrita no PVFS2 e no Ext3 se comporta como a leitura.
0
2
4
6
8
10
12
1 2 4 8 16 32
Quantidade de Threads
Vel
ocid
ade
(MB
/s)
Ext3PVFS 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
-50%
0%
50%
100%
150%
200%
250%
300%
350%
1 2 4 8 16 32
Quantidade de Threads
Gan
ho s
obre
Ext
3
PVFS 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
34
Resultados – Escrita
• Sem acesso concorrente, o PVFS2 com 2 ou mais servidores ganha do Ext3 também na escrita, para uma quantidade suficiente de dados.
0
24
6
810
12
14
1618
201 2 4 8 16 32 64 128
256
512
1024
Quantidade de Dados Escritos (MB)
Vel
ocid
ade
(MB
/s)
Ext3PVFS 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
35
Resultados – Escrita
• Ao aumentarmos a velocidade dos discos, temos um resultado similar aos testes de leitura.
1 thread 32 threads
0
2
4
6
8
10
12
0,00 2,00 4,00 6,00 8,00
Velocidade dos Discos (MB/s)
Vel
ocid
ade
Obt
ida
(MB
/s)
Ext3PVFs 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
0
2
4
6
8
10
12
0,00 2,00 4,00 6,00 8,00
Velocidade dos Discos (MB/s)
Vel
ocid
ade
Obt
ida
(MB
/s)
Ext3PVFs 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
36
PVFS2 vs. Ext3 – Conclusões
Para PVFS2, rede rápida é mais importante que discos rápidos
0
2
4
6
8
10
12
0,00 2,00 4,00 6,00 8,00
Velocidade dos Discos (MB/s)
Vel
ocid
ade
Obt
ida
(MB
/s)
Ext3PVFs 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
Leitura com 32 threads
-50%
0%
50%
100%
150%
200%
250%
300%
350%
0,00 2,00 4,00 6,00 8,00
Velocidade dos Discos (MB/s)
Gan
ho s
obre
Ext
3
PVFs 1 nóPVFS 2 nósPVFS 4 nósPVFS 8 nós
37
PVFS2 vs. Ext3 – Conclusões
PVFS2 não aproveita velocidade agregada de forma linear
1 thread 32 threads
0%
20%
40%
60%
80%
100%
120%
Apr
ovei
tam
ento
da
Ban
da d
os D
isco
s
PIO 0
PIO 1
PIO 2
PIO 3
PIO 0 101% 88% 73% 55% 34%
PIO 1 102% 82% 65% 48% 24%
PIO 2 102% 72% 56% 36% 17%
PIO 3 102% 71% 52% 33% 15%
Ext3 PVFs 1 nó PVFS 2 nós PVFS 4 nós PVFS 8 nós0%
20%
40%
60%
80%
100%
120%
Apr
ovei
tam
ento
da
Ban
da d
os D
isco
s
PIO 0
PIO 1
PIO 2
PIO 3
PIO 0 94% 91% 89% 78% 49%
PIO 1 95% 87% 86% 63% 34%
PIO 2 96% 78% 76% 44% 23%
PIO 3 95% 75% 69% 40% 20%
Ext3 PVFs 1 nó PVFS 2 nós PVFS 4 nós PVFS 8 nós
38
PVFS2 vs. Ext3 – Conclusões
PVFS2 utiliza somente 92% da banda da rede (média 11,5MB/s)• Se disco é 8% mais lento que a rede, PVFS2 e Ext3 “empatariam”.
PVFS2 é mais rápido que Ext3 em rede Ethernet 1000Base-T?• Se discos possuem velocidade média de 28MB/s:
– Similar aos testes com modo PIO 0;– PVFS2 com 8 servidores;– 32 threads clientes;– Aproveitamento do PVFS2 seria de ~49%;– Resultado: 28 x 8 x 49% = 109MB/s.
• Se discos possuem velocidade média de 68MB/s:– Similar aos testes com modo PIO 3;– Usando PVFS2 com 8 servidores;– 32 threads clientes;– Aproveitamento do PVFS2 seria de ~20%;– Resultado: 68 x 8 x 20% = 109MB/s.
39
Trabalhos Futuros
• Testes comparativos no acesso e manipulação de arquivos grandes entre PVFS2 e Ext3 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.
40
Obrigado a todos!
Questões?
top related