提交新活动

谢谢!您的提交已收到!
糟糕!提交表单时出错了。

提交新闻特写

谢谢!您的提交已收到!
糟糕!提交表单时出错了。

订阅新闻通讯

谢谢!您的提交已收到!
糟糕!提交表单时出错了。
2017年8月30日

Dask 0.15.2 版本发布

作者

这项工作由Anaconda Inc.和来自Moore Foundation的数据驱动发现计划提供支持。

我很高兴宣布 Dask 0.15.2 版本发布。此版本包含稳定性增强和错误修复。这篇博文概述了自 6 月 11 日发布的 0.15.0 版本以来的重要变更。

您可以通过 conda 安装 Dask

conda install dask

或通过 pip 从 PyPI 安装

pip install dask[complete] --upgrade

Conda 包可在 defaults 和 conda-forge 频道中获取。

完整的更新日志可在此处获取

以下是一些值得注意的变更。

新的 dask-core 和 dask conda 包

在 conda 上,现在有三个相关的 Dask 包

  1. dask-core:仅包含核心 Dask 包的软件包。它除标准库外没有其他依赖项。这主要面向依赖于 Dask 特定部分的下游库。
  2. distributed:Dask 的分布式调度器,依赖于 Tornado、cloudpickle 和其他库。
  3. dask:一个元包,包含 dask-core、distributed 以及所有相关的库,如 NumPy、Pandas、Bokeh 等。这旨在供用户安装使用。

这种组织结构旨在让下游库只依赖于它们所需的 Dask 部分,同时为用户提供一个包含所有功能的默认体验。

下游库可能希望将其 conda 依赖项从 dask 更改为 dask-core。届时,它们需要根据其用户社区小心地包含必要的库(如 numpy 或 cloudpickle)。

改进的部署

由于在 Docker 或其他网络规则复杂的系统上部署增多,dask-worker 进程现在包含独立的 --contact-address 和 --listen-address 关键字,可用于指定它们宣传的地址和监听的地址。当网络视角发生显著变化时,这特别有用。

dask-worker scheduler-address:8786 \
--contact-address 192.168.0.100:9000 # 通过 192.168.0.100:9000 联系我
--listen-address 172.142.0.100:9000 # 我在此主机上监听

此外,其他服务(如 HTTP 和 Bokeh 服务器)现在会遵循 --listen-address 或 --host 关键字提供的主机,并且不会在指定网络之外可见。

避免内存、文件描述符和进程泄漏

在复杂情况下,Dask 有几次会出现资源泄漏。现在很多问题都已清理。我们感谢所有能够提供非常详细的案例研究来演示这些问题的人,更感谢所有参与解决问题的人。

毫无疑问,这方面还有更多工作要做,我们期待未来的合作。

Array 和 DataFrame API

和往常一样,Dask 的 array 和 dataframe 相对于 NumPy 和 Pandas 填充了它们 API 的新函数集。

查看完整的 API 以供进一步参考

弃用说明

正式弃用 dask.distributed.Executor,用户应改用 dask.distributed.Client。之前这被设置为别名。

移除 Bag.concat,用户应改用 Bag.flatten。

移除 Bag.map 中的神奇元组解包,例如 bag.map(lambda x, y: x + y)。用户应改为手动解包。

Julia

Invenia 的开发者一直在构建与 Dask.distributed 调度器协同工作的 Julia worker 和 client。他们对提出确保跨语言支持所需的问题非常有帮助。

致谢

自 6 月 11 日 0.15.0 版本发布以来,以下人员为 dask/dask 仓库做出了贡献

  • Bogdan
  • Elliott Sales de Andrade
  • Bruce Merry
  • Erik Welch
  • Fabian Keller
  • James Bourbeau
  • Jeff Reback
  • Jim Crist
  • John A Kirkham
  • Luke Canavan
  • Mark Dunne
  • Martin Durant
  • Matthew Rocklin
  • Olivier Grisel
  • Søren Fuglede Jørgensen
  • Stephan Hoyer
  • Tom Augspurger
  • Yu Feng

自 6 月 14 日 1.17.1 版本发布以来,以下人员为 dask/distributed 仓库做出了贡献

  • Antoine Pitrou
  • Dan Brown
  • Elliott Sales de Andrade
  • Eric Davies
  • Erik Welch
  • Evan Welch
  • John A Kirkham
  • Jim Crist
  • James Bourbeau
  • Jeremiah Lowin
  • Julius Neuffer
  • Martin Durant
  • Matthew Rocklin
  • Paul Anton Letnes
  • Peter Waller
  • Sohaib Iftikhar
  • Tom Augspurger

此外,我们很高兴地宣布 John Kirkham(@jakirkham) 已获得 Dask 组织的提交权限,成为核心贡献者。John 一直活跃在整个 Dask 项目中,尤其是在 Dask.array 方面。