多个工作流是否可以跨单独的客户端进程重用持久化的数据帧?



我有一系列由外部系统控制(计划、启动、监控等(的数据准备作业。

这些作业都重复使用同一个 Dask 集群(每个进程创建一个新客户端(。

当 job1 完成并退出时,其持久化的数据帧会在辅助角色内存中保留多长时间?

job2 是否可以访问由 job1 保留的数据帧?如果是这样,如何?

当 job1 完成并存在时,其持久化的数据帧会在工作线程内存中保留多长时间?

几毫秒。 Dask 一旦没有客户端有未来指向数据,就会删除数据。

job2 是否可以访问由 job1 保留的数据帧?如果是这样,如何?

是的。 您可能正在寻找数据集功能。

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是你正在寻找的。

相关内容

最新更新