我有兴趣使用具有与Pegasus项目类似的功能的持久分布式数据流:例如https://pegasus.isi.edu/。 你觉得有办法用dask吗?
我尝试实现一些适用于SLURM集群和dask的东西。 我将在下面详细描述我的解决方案,以便更好地指定我的用例。
这个想法是执行中等规模的任务(运行时间在几分钟到几小时之间),这些任务用图表指定,该图表可以具有持久性并且可以轻松扩展。 我基于dask的调度程序及其图形api实现了一些东西。 为了保持持久性,我写了两种装饰器:
关联taskname-jobid保存在json文件中,该文件允许使用群集返回的任务的状态来管理持久性。 这种工作方式允许图形具有一种持久性。 它提供了轻松调试失败任务的可能性。 即使没有整个工作流程和/或生成它们的功能,使用序列化机制的事实也提供了轻松访问所有中间结果的可能性。 此外,通过这种方式,可以轻松地与不使用这种数据流机制的遗留应用程序进行交互。
与使用dask和分布式执行分布式工作流的其他更现代的方法相比,这个解决方案肯定有点天真,但在我看来,它具有一定的优势(其任务和数据)能力。
我有兴趣知道解决方案是否与之相关,以及它是否似乎用dask描述了一个有趣的,未解决的用例。
如果有人可以推荐我其他方法,我也很感兴趣!