我有一个小集群,我使用以下方法部署了一个 dask 图:
from dask.distributed import Client
...
client = Client(f'{scheduler_ip}:{scheduler_port}', set_as_default=False)
client.get(workflow, final_node)
当然,在工作流程中,我有很多并行运行的任务。然而,有时,一个工作人员正在运行的模块中会出现错误。一旦该模块发生故障,它就会返回到调度程序,然后调度程序会停止并行运行的其他工作(即使其他工作不依赖于此)。这让他们中途停下来。
有没有办法让其他人完成然后失败,而不是立即关闭它们?
最佳答案
Client.get
函数是全有或全无的。您可能应该看看 future 界面。在这里,您将启动许多恰好相互依赖的计算。能完成的就完成。
关于python - Dask 依赖图中的容错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54657511/