python-2.7 - 什么会导致 dask 分布式 future 的状态为 'lost' ?

标签 python-2.7 distributed dask

使用 dask 分布式集群,我注意到,一些长时间运行的任务的 future 从 pending 切换到 finished,其他任务从 pending 切换丢失

我怀疑一些丢失的任务仍在运行,因为我看到dask-worker进程的CPU使用率很高,即使没有 future 状态不再是pending

这里lost到底是什么意思?长时间运行的任务(小时)是否可以归类为丢失,因为它们可能会阻止工作人员向调度程序报告?还有什么可能导致状态丢失以及调度程序对此有何 react ?

最佳答案

这意味着由于某种原因调度程序不再拥有执行此任务所需的信息。通常,这是由于工作线程宕机导致非弹性数据丢失,例如,如果您将一段数据显式分散到单个工作线程,然后该工作线程失败。

>>> future = client.scatter(123)
>>> x = client.submit(f, future)

 ... worker holding future/123 dies

>>> x.status
'lost'

不过,这种情况一般很少见。通常,如果工作人员出现故障,调度程序可以在其他地方复制特定任务的所有工作。

一如既往,提供 minimal complete verifiable example可以帮助您隔离特定情况下发生的情况。

关于python-2.7 - 什么会导致 dask 分布式 future 的状态为 'lost' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53361062/

相关文章:

python - 尝试掌握递归函数

python - 如何使用 python 删除 ml.transcription 文件中句子开头和结尾的标签并将其保存在 newml.transcription 文件中?

python - PyRo 和 RPyC python 库的优缺点是什么?

c++ - 在 Linux 容器内运行 C++ 程序(包含 TCP IP 代码)。

pandas - 同时运行 df.apply、dask 和 pd.get_dummies

python 确定时间范围的最佳方法

python - 如何将此 Python 2.7 代码转换为 Python 3?

java - Apache Spark 中按键不同的 Reducer

python - 如何复制 dask 数据框?

python 或 dask 并行生成器?