Conheça melhor o Burst Buffers, um dos novos recursos do Reiser5 que promete melhorar o desempenho de um volume lógico relativamente grande e lento.
Reiser5 é um sistema de arquivos mantido por Edward Shishkin e que se destaca por incluir a inovação no dimensionamento paralelo, que não é realizado no nível do bloco, mas no através do sistema de arquivos.
O Reiser5 é uma versão substancialmente revisada do sistema de arquivos ReiserFS, na qual o suporte a volumes lógicos escalonáveis paralelos é implementado, permitindo a distribuição eficiente de dados por um volume lógico.
Agora, em novidades mais recentes, Eduard Shishkin anunciou novos recursos que estão sendo desenvolvidos como parte do projeto Reiser5.
Conheça melhor o Burst Buffers, um dos novos recursos do Reiser5
Das inovações recentes, observou-se que o usuário pode adicionar um pequeno dispositivo de bloco de alto desempenho (por exemplo, NVRAM), chamado disco proxy, a um volume lógico relativamente grande, composto por discos de baixo orçamento.
Isso dará a impressão de que todo o volume é composto pelos mesmos dispositivos de alto desempenho que o “disco proxy”.
O método implementado foi baseado em uma observação simples de que, na prática, a gravação em um disco não é realizada constantemente e a curva de carga de E/S tem um formato de pico.
No intervalo entre esses “picos”, sempre há uma oportunidade de despejar dados de um disco proxy substituindo todos os dados (ou apenas parte deles) no armazenamento principal em segundo plano “lento”.
Portanto, a unidade proxy está sempre pronta para receber uma nova parte de dados.
Inicialmente, essa técnica (conhecida como Burst Buffers) teve origem no campo da computação de alto desempenho (HPC). Porém, também exigiu aplicativos comuns, especialmente para aqueles que exigem muito da integridade dos dados (geralmente esse é um tipo diferente de banco de dados).
Tais alterações são feitas atomicamente por qualquer aplicativo em qualquer arquivo, a saber:
- Primeiro, um novo arquivo é criado contendo os dados modificados;
- Portanto, esse novo arquivo é gravado no disco usando fsync (2);
- Depois disso, o novo arquivo é renomeado para o antigo, liberando automaticamente os blocos ocupados pelos dados antigos.
Todas essas etapas, em um grau ou outro, causam uma diminuição significativa no desempenho em qualquer sistema de arquivos.
A situação melhora se o novo arquivo for gravado primeiro em um dispositivo dedicado de alto desempenho, que é exatamente o que acontece no sistema de arquivos Burst Buffers.
No Reiser5, está planejado enviar opcionalmente não apenas novos blocos lógicos do arquivo para o disco proxy, mas também todas as páginas sujas em geral.
Além disso, não apenas as páginas com dados, mas também com metadados, que são registradas nas etapas (2) e (3). Os discos de proxy são suportados no contexto do trabalho regular com volumes lógicos do Reiser5, anunciados no início do ano.
Em outras palavras, o sistema agregado “disco proxy – armazenamento primário” é um volume lógico comum, com a única diferença de que o disco proxy tem prioridade sobre outros componentes do volume na política de alocação de endereço de disco.
A adição de um disco proxy a um volume lógico não é acompanhada de nenhum reequilíbrio de dados e sua remoção ocorre da mesma maneira que a remoção de um disco normal. Todas as operações de disco proxy são atômicas.
Após adicionar um disco proxy, a capacidade total do volume lógico aumenta a capacidade desse disco.
O disco proxy deve ser limpo periodicamente, ou seja, despejar dados dele no armazenamento principal.
Depois de atingir a estabilidade beta do Reiser5, está planejado tornar a limpeza automática (ela será tratada por um encadeamento especial).
Nesta fase, a responsabilidade pela limpeza é do usuário. Se não houver espaço livre no disco proxy, todos os dados serão gravados automaticamente no armazenamento principal.
Ao mesmo tempo, o desempenho geral do FS é reduzido por padrão (devido à constante invocação do procedimento de confirmação de todas as transações disponíveis).
Fonte: https://marc.info
- Como instalar o emulador arcade RetroArch no Ubuntu
- Como instalar o jogo Cows Revenge no Linux via Flatpak
- Como instalar o jogo Combined! no Linux via Flatpak
- Como instalar o driver para o controle do Xbox no Ubuntu
O que está sendo falado no blog
<a href="https://www.edivaldobrito.com.br////” rel=”noopener noreferrer” target=”_blank”>Veja mais artigos publicados neste dia…