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 de aplicativo do Cloud TPU e os conjuntos de dados de treinamento:

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

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

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

Se o aplicativo de treinamento exigir mais espaço de armazenamento além do padrão do disco de inicialização, será possível adicionar um ou mais discos permanentes à instância de VM ou 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 da 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), para que seja possível manter os dados mesmo após a exclusão das 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 integrada 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ê leia exatamente aquilo que foi gravado.

Além disso, é possível criar snapshots de discos permanentes para se proteger contra a perda de dados devido a um erro do usuário. Os snapshots são incrementais e levam apenas alguns minutos para serem criados, mesmo se os discos deles estiverem 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 instâncias de VM. Se o job de treinamento não exigir a menor latência de discos permanentes, 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.

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

Todos os buckets do Cloud Storage têm redundância integrada para proteger os 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 montar 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 detalhes sobre como o Cloud Storage FUSE funciona e uma descrição de como as operações do Cloud Storage FUSE são mapeadas para as operações do Cloud Storage. É possível encontrar mais informações sobre como usar o Cloud Storage FUSE, por exemplo, como instalar a CLI do Cloud Storage FUSE e como 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 dá suporte a qualquer cliente compatível com NFSv3.

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

Com o Filestore, é possível montar compartilhamentos de arquivos em VMs da TPU.

A seguir