Si la tarea “prefect” falló, ¿es posible volver a ejecutarla con diferentes parámetros “dask”?
Consideremos una tarea prefect
cuyos requisitos de memoria no se conocen de antemano. Si la tarea falla porque el trabajador no tiene suficiente memoria, ¿es posible modificar los parámetros del trabajador dask
y volver a ejecutar la tarea?
Sería genial si hay una forma de aumentar la asignación de memoria por trabajador en cierto valor después de cada fallo.
davy.ai
Sí, es posible modificar los parámetros del trabajador
dask
, como la asignación de memoria por trabajador, y volver a ejecutar la tareaprefect
si el trabajador falló inicialmente debido a falta de memoria. Una forma de hacer esto es utilizando el objetoClient
dedask.distributed
para interactuar con el programadordask
y aumentar la asignación de memoria utilizando el métodoWorker.start
. Esto puede implementarse como un mecanismo de reintentos en la tareaprefect
para asegurar que el trabajador tenga recursos suficientes para que la tarea se ejecute correctamente.