Recomendaciones de almacenamiento para cargas de trabajo de IA en infraestructura Azure (IaaS)
Este artículo proporciona recomendaciones de almacenamiento para organizaciones que ejecutan cargas de trabajo de IA en la infraestructura Azure (IaaS). Una solución de almacenamiento para cargas de trabajo de IA en la infraestructura Azure debe ser capaz de administrar las demandas de almacenamiento, acceso y transferencia de datos que son inherentes a la formación e inferencia de modelos de IA.
Las cargas de trabajo de IA requieren un alto rendimiento y una baja latencia para la recuperación y el procesamiento eficientes de los datos. También necesitan mecanismos de versionado y coherencia de datos para garantizar resultados precisos y reproducibles en entornos distribuidos. Al seleccionar la solución de almacenamiento adecuada, tenga en cuenta factores como los tiempos de transferencia de datos, la latencia, los requisitos de rendimiento y la compatibilidad con los sistemas existentes.
Utilice un sistema de archivos para los datos activos. Implemente un sistema de archivos para almacenar datos "específicos del trabajo/activos" utilizados o generados activamente por los trabajos de IA. Esta solución es ideal para el procesamiento de datos en tiempo real debido a sus capacidades de baja latencia y alto rendimiento. Estas capacidades son fundamentales para optimizar el rendimiento de los flujos de trabajo de IA. Azure cuenta con tres soluciones principales de sistemas de archivos para admitir modelos de IA de formación e inferencia en la infraestructura Azure. Para elegir el sistema de archivos adecuado, siga estas recomendaciones:
Utilice Azure Managed Lustre para obtener los tiempos de transferencia de datos más bajos y minimizar la latencia. Azure Managed Lustre proporciona un alto rendimiento con capacidades de sistema de archivos en paralelo y simplifica la administración con la integración de Azure. Es rentable, con costes de almacenamiento basados en el uso, y permite la importación selectiva de datos desde Blob Storage, optimizando la administración de datos.
Utilice Azure NetApp Files cuando necesite funciones y rendimiento de nivel empresarial para cargas de trabajo de IA. Azure NetApp Files ofrece alta fiabilidad y rendimiento, ideal para aplicaciones de misión crítica. Azure NetApp Files es beneficioso si ya ha invertido en infraestructura de NetApp. Es beneficioso para las capacidades de cloud híbrido y cuando necesita personalizar y ajustar las configuraciones de almacenamiento.
Utiliza sistemas de archivos NVMe/SSD locales cuando el rendimiento es la máxima prioridad. Agrega los NVMe locales de los nodos de procesos (nodos de trabajo) utilizando un sistema de archivos paralelo dedicado al trabajo como BeeGFS On Demand (BeeOND). Operan directamente en los nodos de procesos para crear un sistema de archivos temporal de alto rendimiento durante el trabajo. Estos sistemas ofrecen una latencia ultrabaja y un alto rendimiento, lo que los hace ideales para aplicaciones intensivas de E/S como la formación de aprendizaje profundo o la inferencia en tiempo real.
Transfiera los datos inactivos a Azure Blob Storage. Después de completar un trabajo, transfiera los datos de trabajo inactivos de Azure Managed Lustre a Azure Blob Storage para un almacenamiento rentable a largo plazo. El almacenamiento en bloques ofrece opciones escalables con diferentes niveles de acceso, lo que garantiza un almacenamiento eficiente de los datos inactivos o a los que se accede con poca frecuencia, al tiempo que los mantiene disponibles cuando se necesitan.
Implemente puntos de control para la formación de modelos. Configure un mecanismo de puntos de control que guarde el estado del modelo, incluidos los pesos y parámetros de entrenamiento, a intervalos regulares, como cada 500 iteraciones. Almacene estos datos de puntos de control en Azure Managed Lustre para permitir el reinicio del entrenamiento del modelo a partir de un estado previamente guardado, mejorando la flexibilidad y resistencia de sus flujos de trabajo de IA.
Automatice la migración de datos a niveles de almacenamiento de menor coste. Configure las políticas de administración del ciclo de vida de Azure Blob Storage para migrar automáticamente los datos antiguos y de acceso poco frecuente a niveles de almacenamiento de menor coste, como los niveles Cool o Archive. Este enfoque optimiza los costes de almacenamiento al tiempo que garantiza que los datos importantes sigan siendo accesibles cuando se necesiten.
Garantice la coherencia de los datos en entornos distribuidos. Garantice la coherencia de los datos en las cargas de trabajo de IA distribuidas configurando la sincronización entre Azure Managed Lustre y Azure Blob Storage. Esta sincronización garantiza que todos los nodos que acceden a los datos trabajan con la misma versión coherente, lo que evita errores y discrepancias en entornos distribuidos.
Active el versionado de datos para su reproducibilidad. Active el versionado en Azure Blob Storage para realizar un seguimiento de los cambios en los conjuntos de datos y modelos a lo largo del tiempo. Esta función facilita la reversión, mejora la reproducibilidad y favorece la colaboración. Mantiene un historial detallado de las modificaciones de datos y modelos y permite comparar y restaurar versiones anteriores según sea necesario.