PVFS, GFS e IBM GPFS

Descobri hoje o PVFS (parallel virtual filesystem). Parece ser a única coisa arquitetonicamente semelhante ao GPFS da IBM.

A característica que acho a mais atraente nesses filesystems é que pode-se monta-los com um cluster de computadores simples, desta forma:

  • Cada um deles doa parte de seu storage interno para a célula do filesystem, por exemplo, uma partição
  • Os servidores (que podem ser clientes também) são membros da célula
  • Um servidor (ou serviço) de metadata define políticas para distribuir os arquivos fisicamente pelos computadores
  • Um nó que precisa acessar com mais freqüência um certo arquivo, terá ele (ou um cache dele) em seu storage local

Isso garante paralelismo, porque todos os membros acessam um único filesystem lógico que na verdade é uma núvem espalhada por todos os nós. E garante performance, porque coloca o dado (ou arquivo, ou parte dele, ou um cache) mais perto de quem mais precisa dele no momento.

Em contrapartida, o GFS da Red Hat é centrado no storage físico (geralmente externo), ou seja, não implementa esse conceito de nuvem espalhada pelos membros do cluster. Ele está mais preocupado em administrar o acesso físico simultâneo ao storage.

Dando uma rápida olhada, o PVFS me pareceu precisar ainda de uma polida. Seus comandos são feios, e configuração não muito intuitiva e não bem integrada ao sistema operacional, mas é Open Source. O GPFS por outro lado é um produto maduro, já usado nos maiores clusters computacionais do mundo mas é pago.

Acompanho esse mundo de filesystems desde a época do AFS (bela arquitetura mas muito complexo), passando pelo DFS (mais complexo ainda), Coda (vapourware), Inter-mezzo (vapourware), até os de hoje. Eles tem potenciais muito interessantes em aplicações de grandes escritórios distribuidos e de clusters de alta performance. Aqui na IBM, internamente temos algumas células AFS, mas gradativamente estamos migrando para uma nova arquitetura batizada de GSA (Global Storage Architecture), baseada em GPFS, mas acessível por Samba, NFS, etc.


Posted

in

by

Tags: