Dask多客户机

Dask多客户机,dask,dask-distributed,dask-delayed,dask-dataframe,Dask,Dask Distributed,Dask Delayed,Dask Dataframe,dask中是否可能有多个客户端?例如,我可以让多个线程运行,每个线程运行一个客户机,这样当一个线程阻塞时,其他线程可以继续运行吗?在这种情况下,每个客户机都有独立的任务图,它们彼此不依赖 作为后续问题,如果这是可能的,那么如何指定在何处运行特定任务?当我执行dd.read_csv,然后调用compute时,我如何知道哪个客户机及其关联的调度程序/工作程序正在执行此操作 dask中是否可能有多个客户端 是的,这是可能的,例如,您可以同时在一个集群上运行计算,在另一个集群上运行其他计算 我可以运行多

dask中是否可能有多个客户端?例如,我可以让多个线程运行,每个线程运行一个客户机,这样当一个线程阻塞时,其他线程可以继续运行吗?在这种情况下,每个客户机都有独立的任务图,它们彼此不依赖

作为后续问题,如果这是可能的,那么如何指定在何处运行特定任务?当我执行dd.read_csv,然后调用compute时,我如何知道哪个客户机及其关联的调度程序/工作程序正在执行此操作

dask中是否可能有多个客户端

是的,这是可能的,例如,您可以同时在一个集群上运行计算,在另一个集群上运行其他计算

我可以运行多个线程,每个线程运行一个客户端吗

不是客户管理你的工作,而是员工,所以我不确定你在问什么

当一个线程阻塞时,其他线程可以继续

客户端基本上是异步的,应该阻止的操作很少,调用它们的时间取决于您

调用compute时,我如何知道哪个客户端及其关联的调度程序/工作程序正在执行此操作

thing.compute()
将使用默认客户端,这将是最近创建的客户端。函数
dask.distributed.get_client()
将为您获取正确的

要选择要使用的选项,可以使用以下选项之一:

fut = client.compute(thing) 
fut.result() or client.gather(fut)

with client:
    thing.compute()

谢谢,这回答了我的问题。澄清一下,我并不是说阻塞来自客户。我正在使用线程池运行REST服务器,线程可能会阻塞磁盘访问/只是在任务上花费大量时间。您好,很抱歉重新打开此文件,我现在遇到了另一个问题。由于我有多个正在运行的客户端,在使用client.compute和client.gather指定在哪个客户端上运行任务时,一些没有指定客户端的任务(例如dd.read_parquet)默认为Dask的默认客户端,这是最近实例化的一个。当我尝试指定另一个客户端来执行其他处理时,这会给我一个错误。。。有办法解决这个问题吗?谢谢如果你可以制作一个小型的复制机,在这个复制机中,某些东西在错误的客户机上被计算出来,那么你应该把它制作成一个gihub发行版,提交给分布式回购。