Opciones de almacenamiento para datos de Cloud TPU
En este documento, se describen las opciones de almacenamiento de datos que puedes usar cuando entrenas 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 la canalización de entrada del host
- Entrada de entrenamiento de modelos
- Salida de entrenamiento de modelos
Las opciones de almacenamiento para los datos de aplicación y los conjuntos de datos de entrenamiento de TPU son las siguientes:
- Almacenamiento en bloque duradero, incluidos el disco de arranque y los discos de almacenamiento conectados
- Buckets de Cloud Storage
- Cloud Storage FUSE
- Archivos compartidos de Filestore en una VM de TPU
- Recurso compartido de archivos de Managed Lustre
Para obtener más información sobre cómo administrar el almacenamiento, consulta las siguientes páginas:
- Elige un tipo de disco
- Configura los discos para cumplir con los requisitos de rendimiento
- Precios de imágenes y discos
Almacenamiento en bloque duradero
El almacenamiento en bloque duradero, también conocido como discos o volúmenes, se usa para los datos que deseas conservar después de detener, suspender o borrar tu VM de TPU. El almacenamiento en bloque duradero sigue disponible incluso si la VM de TPU falla. Puedes usar el disco de arranque de la VM de TPU o conectar almacenamiento en bloque adicional a tu TPU.
Recomendamos conectar un disco adicional en estas situaciones:
- El tamaño de tu conjunto de datos de entrenamiento supera el tamaño del disco de arranque de la TPU.
- Tienes datos de solo lectura y quieres un acceso de lectura más rápido con un volumen de Hyperdisk ML.
Generación de TPU y tipos de discos compatibles
En la siguiente tabla, se muestran los tipos de discos compatibles con cada generación de TPU:
| Generación de TPU | Tipos de discos compatibles |
|---|---|
| TPU7x | Hyperdisk Balanced, Hyperdisk ML |
| TPU v6e | Hyperdisk Balanced, Hyperdisk ML |
| TPU v5p | Disco persistente balanceado, Hyperdisk ML |
| TPU v5e | Disco persistente balanceado, Hyperdisk ML |
Disco de arranque de la VM de TPU
De forma predeterminada, cada VM de TPU tiene un solo disco de arranque de 10 GB. Cuando creas tus VMs, puedes configurar un disco de arranque más grande. Para obtener más información, consulta Crea un disco de arranque personalizado. El disco de arranque contiene el sistema operativo, los controladores de TPU y las bibliotecas. El disco de arranque también puede almacenar conjuntos de datos descargados de forma temporal para el preprocesamiento y los datos de entrada y salida del modelo, siempre y cuando el tamaño total de los datos no exceda el espacio disponible en el disco de arranque.
Si tu aplicación requiere espacio de almacenamiento adicional más allá del predeterminado del disco de arranque, puedes agregar uno o más discos duraderos a tu instancia de VM de TPU. Para obtener más información, consulta los siguientes vínculos:
- Agregar un disco persistente a tu VM
- Agrega un Hyperdisk de Google Cloud
- Cómo modificar hiperdiscos
- Cambia el tamaño de un disco persistente
Almacenamiento conectado
Tanto Hyperdisk como Persistent Disk son dispositivos de almacenamiento de red duraderos a los que tus instancias de VM pueden acceder de igual forma que a los discos físicos de una computadora de escritorio o un servidor. Ambos tipos de discos se crean de forma independiente de tus instancias de VM, por lo que puedes conservar tus datos incluso después de borrar tu VM.
Entre las ventajas de usar Hyperdisk en lugar de Persistent Disk, se incluyen el rendimiento personalizable y los límites más altos de las IOPS y la capacidad de procesamiento. Para obtener más información sobre Hyperdisk y Persistent Disk, consulta Elige un tipo de disco.
Cuando conectas un disco a un MIG con una porción de VM de TPU de varios hosts, el sistema conecta el disco a cada VM de esa porción de TPU. Para evitar que dos o más VMs de TPU escriban en un disco al mismo tiempo, debes configurar todos los discos que conectes a una porción de TPU de varios hosts como de solo lectura. Los discos de solo lectura son útiles para almacenar un conjunto de datos para su procesamiento en una porción de TPU. Debido a que Hyperdisk Balanced no admite el modo de solo lectura, solo puedes conectar un volumen de Hyperdisk Balanced a una sola instancia de VM de TPU.
Para obtener más información sobre el uso del almacenamiento en bloque duradero, consulta Agrega un disco persistente a tu VM y Agrega un Hyperdisk.
Copias de seguridad del disco
Es posible que te resulte difícil recuperar los datos del disco de arranque o los borrados si la VM de TPU se queda atascada en un estado "desconocido". Crea una copia de seguridad de tus datos con otra opción de almacenamiento, como los buckets de Cloud Storage.
Si almacenas datos en un disco conectado, puedes usar instantáneas de disco, que crean copias de seguridad de los datos en un disco de forma incremental. El disco de arranque de la VM de TPU no admite instantáneas de disco. Para obtener más información, consulta Acerca de las instantáneas de disco.
Depósitos de Cloud Storage
Los buckets de Cloud Storage son opciones de almacenamiento flexibles, escalables y duraderas para tus instancias de VM. Si tu trabajo de entrenamiento no requiere la menor latencia del almacenamiento en bloque duradero, puedes almacenar tu 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 tu bucket de Cloud Storage en la misma zona que tu VM de TPU te brinda un rendimiento comparable al del almacenamiento en bloque duradero, pero con mayor latencia 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 datos a través de eventos de mantenimiento del centro de datos. Cloud Storage calcula sumas de verificación para todas las operaciones, lo que ayuda a garantizar que lo que lees es lo que escribiste.
A diferencia del almacenamiento en bloque duradero, los buckets de Cloud Storage no te restringen a la zona en la que se encuentra tu instancia. Además, puedes leer y escribir datos en un bucket desde varias instancias en simultáneo. Por ejemplo, puedes configurar instancias en varias zonas para leer y escribir datos en el mismo bucket, en lugar de replicar los datos en almacenamiento en bloque duradero en varias zonas.
Para obtener más información, consulta Cómo conectarse a buckets de Cloud Storage.
Cloud Storage FUSE
Cloud Storage FUSE te permite activar buckets de Cloud Storage y acceder a estos como sistemas de archivos locales. Esto permite que las aplicaciones lean y escriban objetos en tu bucket con la semántica del sistema de archivos estándar.
Consulta la documentación de Cloud Storage FUSE para obtener detalles sobre cómo funciona y ver una descripción de cómo las operaciones de Cloud Storage FUSE se asignan a las 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 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. En el caso de las cargas de trabajo sensibles a la latencia, Filestore admite una capacidad de hasta 100 TiB y una capacidad de procesamiento de 25 GiB por segundo y 720,000 IOPS, con una variabilidad mínima en el rendimiento.
Con Filestore, puedes activar archivos compartidos en las VMs de TPU.
Recurso compartido de archivos de Managed Lustre
Managed Lustre es un sistema de archivos paralelos completamente administrado para cargas de trabajo de IA y HPC con uso intensivo de datos. Proporciona alto rendimiento, capacidad a escala de varios petabytes y cumplimiento con POSIX.
Con Managed Lustre, puedes activar archivos compartidos en VMs de TPU. Es especialmente útil para manejar grandes conjuntos de datos y los requisitos de alta capacidad de procesamiento de las cargas de trabajo de aprendizaje automático, lo que permite un entrenamiento y una inferencia eficientes.
Para obtener más información, consulta la documentación de Managed Lustre.
¿Qué sigue?
- Obtén más información para agregar un disco persistente a tu VM.
- Obtén más información para agregar un Google Cloud Hyperdisk a tu VM.
- Aprende a conectar tu instancia a un bucket de Cloud Storage.
- Obtén más información para activar un recurso de archivos compartidos de Filestore.