Dask Distributed 在客户端关闭后获取期货
Dask Distributed Getting Futures after Client Closed
有什么办法可以防止 dask/distributed 在客户端关闭时取消排队和执行期货?
我想使用 jupyter notebook 开始一些非常长的 运行 分布式模拟,关闭 notebook,稍后检索结果。
您可以使用 "publish" 机制在调度程序中保留对某些数据的引用,以便稍后在另一个客户端中检索。存在两种形式,它们用不同的语法做同样的事情:
>>> client.publish_dataset(mydata=f)
这里 f
是未来,未来列表或 dask 集合(数据框等)。
在另一个会话中:
>>> client.list_datasets()
['mydata']
>>> client.get_dataset('mydata')
<same thing as f>
另一种可能更简单的语法如下
>>> client.datasets['mydata'] = f
>>> list(client.datasets)
['mydata']
>>> client.datasets['mydata']
<same thing as f>
要删除引用并允许从集群中清除数据(如果没有客户端需要它们),请使用 client.unpublish_dataset('mydata')
或 del client.datasets['mydata']
。
有什么办法可以防止 dask/distributed 在客户端关闭时取消排队和执行期货?
我想使用 jupyter notebook 开始一些非常长的 运行 分布式模拟,关闭 notebook,稍后检索结果。
您可以使用 "publish" 机制在调度程序中保留对某些数据的引用,以便稍后在另一个客户端中检索。存在两种形式,它们用不同的语法做同样的事情:
>>> client.publish_dataset(mydata=f)
这里 f
是未来,未来列表或 dask 集合(数据框等)。
在另一个会话中:
>>> client.list_datasets()
['mydata']
>>> client.get_dataset('mydata')
<same thing as f>
另一种可能更简单的语法如下
>>> client.datasets['mydata'] = f
>>> list(client.datasets)
['mydata']
>>> client.datasets['mydata']
<same thing as f>
要删除引用并允许从集群中清除数据(如果没有客户端需要它们),请使用 client.unpublish_dataset('mydata')
或 del client.datasets['mydata']
。