Dask 分布式。如何在正在计算的函数中获取任务密钥ID?

2024-03-13

我使用 dask.distributed 进行的计算包括创建名称包含 UUID4 的中间文件,用于标识该工作块。

    pairs = '{}\n{}\n{}\n{}'.format(list1, list2, list3, ...)

    file_path = os.path.join(job_output_root, 'pairs',
                             'pairs-{}.txt'.format(str(uuid.uuid4()).replace('-', '')))

    file(file_path, 'wt').writelines(pairs)

同时,dask分布式集群中的所有任务都有唯一的key。因此,使用该密钥 ID 作为文件名是很自然的。

是否可以?


有两种方法可以解决这个问题:

  1. 您确定 uuid 并将其传递给 Dask(已实现)
  2. Dask 确定 uuid 并将其传递给您的函数(未实现,但可能)

您将 uuid 传递给 Dask

功能类似于.submit接受一个key=关键字参数,您可以在其中指定要使用的密钥

>>> e.submit(inc, 1, key='inc-12345')
<Future: status: pending, key: inc-12345>

类似地,dask.delayed 函数支持dask_key_name关键字参数

>>> value = delayed(inc)(1, dask_key_name='inc-12345')

你从 Dask 那里得到钥匙

在每个任务执行期间,调度程序将这样的上下文信息放入每线程全局中。从版本 1.13 开始,它的可用方式如下:

def your_function(...):
    from distributed.worker import thread_state
    key = thread_state.key

future = e.submit(your_function, ...)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Dask 分布式。如何在正在计算的函数中获取任务密钥ID? 的相关文章

  • scrapy python 请求未定义

    我在这里找到了答案 code for site in sites Link site xpath a href extract CompleteLink urlparse urljoin response url Link yield Re
  • 在minidom python中添加带有属性的元素

    我想将具有属性的子节点添加到特定标记 我的xml是
  • Python Pandas:如何替换包含“?”的字符串

    我有一个 Python 2 7 Pandas Dataframe 如下所示 Id Title URL Id 1 Bruce Almighty https www youtube com watch v 5VGyTOGxyVA Id 2 Su
  • 如何加快列表理解速度

    以下是我的清单 col red yellow blue red green yellow pink orange brown pink brown 我的目标是消除每个列表中出现一次的项目 这是我的代码 eliminate w for w i
  • 如何检查当前日期并移至下一个日期

    我遇到了一个我似乎无法理解的 python 问题 不确定是否需要使用 if 语句 但因为我是 python 新手 所以我实际上不确定如何编写这个小问题 事实上 这就是我遇到的问题 对于出发日历 我希望 python 能够执行以下操作 查看
  • 如何将 numpy rearray 的子集转换为连续数组?

    我有一个recarray来自读取 csv 文件 我有兴趣将列的子集转换为连续浮点数组 我想避免将它们转换为列表或将它们一一堆叠 我尝试了中的建议https stackoverflow com a 11792956 https stackov
  • 使用 Python 和 Google App Engine 的 Cookie

    我正在 Google App Engine 上开发一个应用程序 但遇到了问题 我想向每个用户会话添加一个 cookie 以便我能够区分当前用户 我希望他们都是匿名的 因此我不需要登录 因此 我为 cookie 实现了以下代码 def cle
  • 对 os.listdir 文件进行排序 Python

    如果已下载数年的数据 这些数据存储在具有以下命名约定的文件中 year day dat 例如 名为 2014 1 dat 的文件包含 2014 年 1 月 1 日的数据 我需要按天排序读取这些数据文件 2014 1 dat 2014 2 d
  • ValueError:张量:(...)不是该图的元素

    我正在使用 keras 的预训练模型 在尝试获取预测时出现错误 我在烧瓶服务器中有以下代码 from NeuralNetwork import app route uploadMultipleImages methods POST def
  • Python 导入非常慢 - Anaconda python 2.7

    我的 python import 语句变得非常慢 我使用 Anaconda 包在本地运行 python 2 7 导入模块后 我编写的代码运行得非常快 似乎只是导入需要很长时间 例如 我使用以下代码运行了一个 tester py 文件 imp
  • pygame:使用 sprite.RenderPlain 绘制精灵组的顺序

    我有一个精灵组 需要按一定的顺序绘制 以便其精灵按应有的方式重叠 然而 即使使用运算符模块函数 sorted self sprites key attrgetter y x 对组进行排序 顺序也是错误的 我该如何解决这个问题 直截了当地说
  • Python - 设置 .pop() 行为

    这是我在 Python 集合中注意到的奇怪的事情 我读到集合中没有顺序 但它确实从 0 到 79 弹出较低的元素 后来从 79 到 127 弹出 它不再弹出较低的元素 只有在 128 到来之后 79 才会被弹出 为什么会这样呢 有没有其他方
  • RMI 中的引用传递问题? [复制]

    这个问题在这里已经有答案了 有人可以告诉我我错在哪里 为什么这个 RMI 聊天应用程序不起作用 目标是通过远程对象或序列化对象实现客户端 服务器和逻辑之间的解耦 import javax swing import java awt even
  • Python 2:SMTPServerDisconnected:连接意外关闭

    我在用 Python 发送电子邮件时遇到一个小问题 me my email address you recipient s email address me email protected cdn cgi l email protectio
  • 如何在 Windows 命令行中使用参数运行 Python 脚本

    这是我的蟒蛇hello py script def hello a b print hello and that s your sum sum a b print sum import sys if name main hello sys
  • 如何包含位于模块中但在 Sphinx 中的类和方法之外的文档字符串/注释

    我有一个utils我的包中的模块 它由多个不需要实例化的杂项独立方法组成 我想在其中放置一些通用注释 文档字符串utils文件 例如 import os import json Miscellaneous methods that help
  • Python 2.7 缩进错误[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题是由拼写错误或无法再重现的问题引起的 虽然类似的问题可能是on topic help on topic在这里 这个问题的解决方式不
  • 如何在 Python 中使用 PIL\Numpy 获取灰度图像的平均像素值?

    我有很少的灰度图像 我想计算整个图像的平均像素值 这样我就可以使用单个值来表示每个单独的图像 如果你想做这样的事情 你应该考虑使用scikit image而不是原始的 PIL 或枕头 SciKit Image 使用 numpy 数组来存储图
  • 如何读取Python字节码?

    我很难理解 Python 的字节码及其dis module import dis def func x 1 dis dis func 上述代码在解释器中输入时会产生以下输出 0 LOAD CONST 1 1 3 STORE FAST 0 x
  • 适用于 python2.7 谷歌应用引擎的云任务 API

    我在 Google App Engine Python 2 7 下创建了一个项目 我使用创建了一些任务queue yaml并与部署glcoud命令 当我转到 任务队列 部分下的 Google App Engine 控制台时 它会重定向到 云

随机推荐