Selección automática de VMs

Cuando fijas un trabajo a un tipo de máquina específico con la opción de canalización workerMachineType, corres el riesgo de experimentar demoras o fallas en el trabajo debido a la falta de recursos. La selección automática de VMs aborda este problema eligiendo automáticamente trabajadores de un grupo de tipos de máquinas compatibles y disponibles con la flexibilidad de instancias de Compute Engine. Esto ayuda a garantizar que tus canalizaciones de Dataflow adquieran capacidad de forma confiable, lo que te permite mantener un rendimiento constante y evitar interrupciones.

Opciones de configuración no compatibles

La selección automática de VMs se desactiva si tu canalización está configurada con cualquiera de las siguientes opciones:

  • Dataflow Prime está habilitado.
  • Se establece la opción de canalización min_cpu_platform.
  • Se usan discos Hyperdisk Balanced o rendimiento aprovisionado personalizado (IOPS y capacidad de procesamiento). Los trabajos que se inicien con estos parámetros de configuración fallarán.
  • La Confidential VM está habilitada.
  • Se requieren aceleradores (GPU o TPU).
  • Trabajos que no usan Dataflow Shuffle ni Streaming Engine

Habilita la selección automática de VMs

La selección automática de VMs se habilita automáticamente en cualquiera de las siguientes situaciones:

Comportamiento de la selección automática de VMs

Configura las sugerencias de recursos min_ram y cpu_count de forma aislada o combinada. Por ejemplo:

  1. Un trabajo con solo cpu_count=2 puede aprovisionar instancias con n4-standard-2 (2 CPU virtuales, 8 GB de RAM), c4-standard-2 (2 CPU virtuales, 7 GB de RAM) y otros tipos de máquinas.
  2. Un trabajo con cpu_count=4 y min_ram=16GB puede aprovisionar instancias con n4-standard-4 (4 CPUs virtuales, 16 GB de RAM), c4-highmem-4 (4 CPUs virtuales, 31 GB de RAM) y otros tipos de máquinas.

La selección automática de VMs optimiza la selección de VM para la obtención de recursos. Esto significa que es posible que experimentes un rendimiento reducido mientras usas la selección automática de VMs para mejorar la obtención de algunos de tus trabajos altamente ajustados. Te recomendamos que pruebes la selección automática de VMs en un subconjunto de tus trabajos existentes antes de implementarla de forma gradual en más trabajos. Para obtener más información sobre la obtención, consulta Mejora la obtención de recursos para los trabajos en la documentación de Batch.

Dataflow intenta usar primero las familias de máquinas de 4ª generación (por ejemplo, N4 o C4) para ofrecer una mejor eficiencia. Si las máquinas de 4ª generación no están disponibles en tu región, no tienen suficiente cuota o no son compatibles con tus parámetros de configuración, Dataflow recurre automáticamente a las familias de máquinas de 2ª generación que están ampliamente disponibles (por ejemplo, N2 o E2) para garantizar que tu trabajo pueda iniciarse sin demoras de capacidad.

Si especificas un tipo de disco, como pd-ssd o pd-standard, cuando habilitas la selección automática de VMs con sugerencias de recursos (ajuste correcto), Dataflow solo aprovisiona familias de máquinas de 2ª generación compatibles. Para garantizar la máxima compatibilidad y permitir el uso de generaciones de máquinas más nuevas, no asignes un tipo de disco.

Limitaciones

Cuando se usa la selección automática de VMs, las actualizaciones de imágenes de contenedor del ejecutor portátil se inhabilitan para los trabajos de transmisión que usan el ejecutor portátil.

Reservas de Compute Engine

Si usas reservas de Compute Engine con la selección automática de VMs, ten en cuenta lo siguiente:

  • Si tienes reservas configuradas para consumirse automáticamente, es posible que se usen si la selección automática de VMs aprovisiona tipos de máquinas que coinciden con la reserva.
  • La selección automática de VMs consume instancias de procesamiento a medida que están disponibles. Por lo tanto, no puedes especificar que el servicio consuma instancias de una reserva específica.

Problemas conocidos

Cuando uses la selección automática de VMs, ten en cuenta los siguientes problemas conocidos:

Paralelismo inesperado

Si observas un uso de CPU bajo o un paralelismo inesperado en las VMs de trabajador cuando usas la selección automática de VMs con ajuste correcto, verifica los siguientes parámetros de configuración.

Ajuste de escala automático horizontal

Si inhabilitas el ajuste de escala automático horizontal, es posible que tu trabajo se ejecute con un paralelismo más bajo de lo esperado. Para evitar este problema, mantén habilitado el ajuste de escala automático horizontal. Para obtener más información, consulta Asistencia y limitaciones del ajuste adecuado.

Subprocesos del agente de trabajo

De forma predeterminada, Dataflow establece la cantidad de subprocesos por trabajador según el recuento de CPU virtuales del tipo de máquina seleccionado. Si aún observas un uso de CPU bajo o un paralelismo inesperado, puedes anular el valor predeterminado configurando la opción de canalización numberOfWorkerHarnessThreads o number_of_worker_harness_threads. Esta opción se aplica de forma global a todos los grupos de trabajadores de la canalización.