我有一系列数据准备工作,这些工作由外部系统控制(计划,启动,监视等)。
这些作业都重复使用相同的Dask群集(每个过程都会创建一个新客户端)。
job1完成并退出时,其持久化的DataFrames将在工作者内存中保留多长时间?
job2是否可以访问由job1保留的DataFrame?如果可以,怎么办?
答案 0 :(得分:0)
job1完成并存在后,其持久化的DataFrames将在工作者内存中保留多长时间?
几毫秒。一旦没有客户指向,Dask会立即删除数据。
job2是否可以访问由job1保留的DataFrame?如果可以,怎么办?
是的。您可能正在寻找数据集功能。
https://docs.dask.org/en/latest/futures.html#distributed.Client.publish_dataset https://distributed.dask.org/en/latest/publish.html
# on machine 1
client1.datasets["my-dataset"] = df
# on machine 2
df = client2.datasets["my-dataset"]
调度程序还可以使用多种其他机制来保留期货,包括变量,队列,发布/订阅等。我的猜测是,尽管您正在寻找数据集API。