Opções de armazenamento para dados do Cloud TPU

Neste documento, descrevemos as opções de armazenamento de dados que podem ser usadas ao treinar modelos no Cloud TPU.

Introdução

O Cloud TPU requer armazenamento de dados para o seguinte:

  • download e pré-processamento do conjunto de dados
  • processamento do pipeline de entrada do host
  • entrada de treinamento de modelo
  • saída de treinamento de modelo

Há cinco opções de armazenamento para os dados do aplicativo do Cloud TPU e para os conjuntos de dados de treinamento:

Para detalhes de custo de armazenamento e desempenho, consulte Opções de armazenamento.

O disco de inicialização para uma VM de TPU

Por padrão, cada VM do Cloud TPU tem um disco permanente de inicialização de 100 GB que contém o sistema operacional. O disco de inicialização também pode ser usado para armazenar conjuntos de dados transferidos por download para pré-processamento e modelagem de dados de entrada e saída, desde que a quantidade total não exceda o espaço disponível no disco de inicialização.

Se o aplicativo de treinamento exigir espaço de armazenamento além do disco de inicialização padrão, será possível adicionar um ou mais discos permanentes à instância de VM ou VM da TPU. Há procedimentos diferentes para adicionar um disco permanente a uma VM do Compute Engine ou a uma VM da TPU.

Um disco permanente anexado a uma VM de TPU

Os discos permanentes são dispositivos de armazenamento de rede duráveis que podem ser acessados pelas instâncias de VM, como discos físicos em um computador ou servidor. Os dados armazenados em cada um dos discos permanentes são distribuídos em vários discos físicos. O Compute Engine gerencia os discos físicos e a distribuição de dados para garantir a redundância e otimizar o desempenho.

Os discos permanentes são criados independentemente das instâncias de máquina virtual (VM, na sigla em inglês) para que você mantenha os dados mesmo depois de excluir as instâncias de VM. Como o desempenho dos discos permanentes aumenta ou diminui automaticamente de acordo com o tamanho, é possível redimensionar os discos permanentes atuais ou adicionar mais discos permanentes em uma instância para atender aos seus requisitos de desempenho e espaço de armazenamento.

Os discos permanentes têm redundância incorporada para proteger os dados contra falhas de equipamentos e garantir a disponibilidade deles durante eventos de manutenção de data center. As somas de verificação são calculadas para todas as operações de disco permanente para garantir que você consiga ler exatamente aquilo que gravou.

Além disso, é possível criar snapshots de discos permanentes para se proteger contra a perda de dados resultante de erros do usuário. Os snapshots são incrementais e levam apenas alguns minutos para serem criados, mesmo que os discos deles estejam anexados a instâncias em execução.

Para mais informações sobre o uso de discos permanentes com VMs de TPU, consulte Adicionar um disco permanente a uma VM de TPU.

Buckets do Cloud Storage

Os buckets do Cloud Storage são a opção de armazenamento mais flexível, escalonável e durável para as instâncias de VM. Se o job de treinamento não exigir a menor latência de discos persistentes, armazene o conjunto de dados em um bucket do Cloud Storage.

O desempenho dos buckets do Cloud Storage depende da classe de armazenamento selecionada e do local do bucket em relação à instância.

A criação do bucket do Cloud Storage na mesma zona da VM do TPU oferece um desempenho comparável ao dos discos permanentes, mas com maior latência e características de capacidade de processamento menos consistentes.

Todos os buckets do Cloud Storage têm redundância incorporada para proteger seus dados contra falhas em equipamentos e garantir a disponibilidade deles durante eventos de manutenção de data center. Os checksums são calculados para todas as operações do Cloud Storage para garantir que você consiga ler exatamente aquilo que gravou.

Ao contrário dos discos permanentes, os buckets do Cloud Storage não estão restritos à zona em que a instância está localizada. Além disso, você pode ler e gravar dados em um bucket a partir de várias instâncias simultaneamente. Por exemplo, configure instâncias em várias zonas para ler e gravar dados no mesmo bucket em vez de replicar os dados em discos permanentes em várias zonas.

Cloud Storage FUSE

O Cloud Storage FUSE permite ativar e acessar buckets do Cloud Storage como sistemas de arquivos locais. Isso permite que os aplicativos leiam e gravem objetos no bucket usando a semântica padrão de sistemas de arquivos.

Consulte a documentação do FUSE do Cloud Storage para saber como o FUSE do Cloud Storage funciona e como as operações do FUSE do Cloud Storage são mapeadas para operações do Cloud Storage. Confira mais informações sobre como usar o Cloud Storage FUSE, como instalar a CLI do Cloud Storage FUSE e montar buckets no GitHub.

Compartilhamento de arquivos do Filestore

O compartilhamento de arquivos do Filestore é um armazenamento conectado à rede (NAS, na sigla em inglês) totalmente gerenciado do Compute Engine. O Filestore oferece compatibilidade com aplicativos empresariais atuais e aceita qualquer cliente compatível com NFSv3.

O Filestore oferece baixa latência para operações com arquivos. Para cargas de trabalho sensíveis à latência, o Filestore oferece suporte a capacidade de até 100 TB e capacidade de processamento de 25 GB por segundo e 720 mil IOPS, com variabilidade mínima de desempenho.

Com o Filestore, você pode montar compartilhamentos de arquivos em VMs de TPU.

A seguir