这项工作由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 频道中获取。
完整的更新日志可在此处获取
以下是一些值得注意的变更。
在 conda 上,现在有三个相关的 Dask 包
这种组织结构旨在让下游库只依赖于它们所需的 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 有几次会出现资源泄漏。现在很多问题都已清理。我们感谢所有能够提供非常详细的案例研究来演示这些问题的人,更感谢所有参与解决问题的人。
毫无疑问,这方面还有更多工作要做,我们期待未来的合作。
和往常一样,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)。用户应改为手动解包。
Invenia 的开发者一直在构建与 Dask.distributed 调度器协同工作的 Julia worker 和 client。他们对提出确保跨语言支持所需的问题非常有帮助。
自 6 月 11 日 0.15.0 版本发布以来,以下人员为 dask/dask 仓库做出了贡献
自 6 月 14 日 1.17.1 版本发布以来,以下人员为 dask/distributed 仓库做出了贡献
此外,我们很高兴地宣布 John Kirkham(@jakirkham) 已获得 Dask 组织的提交权限,成为核心贡献者。John 一直活跃在整个 Dask 项目中,尤其是在 Dask.array 方面。