Opciones de almacenamiento para los datos de Cloud TPU

En este documento, se describen las opciones de almacenamiento de datos que se pueden usar para entrenar modelos en Cloud TPU.

Introducción

Cloud TPU requiere el almacenamiento de datos para lo siguiente:

  • descarga y procesamiento previo del conjunto de datos
  • procesamiento de canalización de entrada del host
  • entrada de entrenamiento de modelos
  • salida de entrenamiento de modelos

Hay cinco opciones de almacenamiento para los datos de la aplicación de Cloud TPU y los conjuntos de datos de entrenamiento:

Para obtener detalles sobre el costo y el rendimiento de almacenamiento, consulta Opciones de almacenamiento.

El disco de arranque para una VM de TPU

De forma predeterminada, cada VM de Cloud TPU tiene un disco persistente de 100 GB de arranque único que contiene el sistema operativo. El disco de arranque también se puede usar a fin de almacenar conjuntos de datos descargados para el procesamiento previo y los datos de entrada y salida del modelo, siempre que la cantidad total no supere el espacio disponible en el disco de arranque.

Si tu aplicación de entrenamiento requiere espacio de almacenamiento adicional aparte del disco de arranque predeterminado, puedes agregar uno o más discos persistentes a tu instancia de VM o de VM de TPU. Existen diferentes procedimientos para agregar un disco persistente a una VM de Compute Engine o a una VM de TPU.

Un disco persistente conectado a una VM de TPU

Los discos persistentes son dispositivos de almacenamiento en red duraderos a los que las instancias de VM pueden acceder, como los discos físicos de una computadora de escritorio o un servidor. Los datos de cada disco persistente se distribuyen en varios discos físicos. Compute Engine administra los discos físicos y la distribución de datos para garantizar la redundancia y el rendimiento óptimo.

Los discos persistentes se crean de forma independiente de tus instancias de máquina virtual (VM), por lo que puedes conservar tus datos incluso después de borrar tus instancias de VM. El rendimiento del disco persistente escala automáticamente con el tamaño, por lo que puedes cambiar el tamaño de tus discos persistentes existentes o agregar más discos persistentes a una instancia a fin de cumplir con tus requisitos de rendimiento y espacio de almacenamiento.

Los discos persistentes tienen redundancia incorporada para proteger tus datos contra fallas del equipo y garantizar la disponibilidad de los datos durante los eventos de mantenimiento del centro de datos. Las sumas de verificación se calculan para todas las operaciones de disco persistente a fin de que podamos asegurarnos de que lo que lees es lo que escribiste.

Además, puedes crear instantáneas de discos persistentes para protegerte contra la pérdida de datos debido a un error del usuario. Las instantáneas son incrementales y crearlas solo te llevará unos minutos, incluso si tus discos de instantáneas están conectados a instancias en ejecución.

Para obtener más información sobre el uso de discos persistentes con VM de TPU, consulta Agrega un disco persistente a una VM de TPU.

Buckets de Cloud Storage

Los buckets de Cloud Storage son la opción de almacenamiento más flexible, escalable y duradero para tus instancias de VM. Si tu trabajo de entrenamiento no requiere la menor latencia de los discos persistentes, puedes almacenar el conjunto de datos en un bucket de Cloud Storage.

El rendimiento de los buckets de Cloud Storage depende de la clase de almacenamiento que selecciones y la ubicación del bucket en relación con tu instancia.

Crear el bucket de Cloud Storage en la misma zona que tu VM de TPU proporciona un rendimiento comparable al de los discos persistentes, pero con una latencia más alta y características de capacidad de procesamiento menos coherentes.

Todos los buckets de Cloud Storage tienen redundancia incorporada para proteger tus datos contra fallas del equipo y garantizar la disponibilidad de los datos a través de eventos de mantenimiento del centro de datos. Las sumas de verificación se calculan en todas las operaciones de Cloud Storage a fin de garantizar que lo que lees es lo que escribiste.

A diferencia de los discos persistentes, los buckets de Cloud Storage no están restringidos a la zona en la que se encuentra la instancia. Además, puedes leer y escribir datos en un bucket desde varias instancias de forma simultánea. Por ejemplo, puedes configurar instancias en varias zonas para leer y escribir datos en el mismo bucket, en lugar de replicar los datos en discos persistentes en varias zonas.

Cloud Storage FUSE

Cloud Storage FUSE te permite activar y acceder a los buckets de Cloud Storage como sistemas de archivos locales. Esto permite que las aplicaciones lean y escriban objetos en tu bucket con semántica estándar del sistema de archivos.

Consulta la documentación de FUSE de Cloud Storage para obtener detalles sobre su funcionamiento y una descripción de cómo las operaciones de Cloud Storage FUSE se asignan a las operaciones de Cloud Storage. Puedes encontrar información adicional sobre cómo usar Cloud Storage FUSE, por ejemplo, cómo instalar la CLI de Cloud Storage FUSE y activar los buckets en GitHub.

Archivos compartidos de Filestore

Los archivos compartidos de Filestore son un almacenamiento conectado a la red (NAS) completamente administrado para Compute Engine. Filestore ofrece compatibilidad con aplicaciones empresariales existentes y admite cualquier cliente compatible con NFSv3.

Filestore ofrece latencia baja para las operaciones con archivos. Para las cargas de trabajo sensibles a la latencia, Filestore admite una capacidad de hasta 100 TB y una capacidad de procesamiento de 25 GB por segundo y 720,000 IOPS, con una variabilidad mínima en el rendimiento.

Con Filestore, puedes activar archivos compartidos en VM de TPU.

¿Qué sigue?