提交新活动

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

提交新闻报道

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

订阅新闻邮件

谢谢!您的提交已收到!
哎呀!提交表单时出错了。
Sep 17, 2018

Dask 开发日志

作者

这项工作由 Anaconda Inc 提供支持

为了提高透明度,我正在尝试更频繁地撰写博客,介绍 Dask 及相关项目正在进行的工作。这里没有任何内容已准备好用于生产环境。这篇博文是匆忙写成的,所以不要期望有精炼的润色。

自上次更新以来,在0.19.0 发布博文中两周前,我们在以下领域开展了活动:

  1. 更新 Dask 示例以在 Binder 上使用 JupyterLab
  2. 将 Dask 示例渲染为静态 HTML 页面以便于查看
  3. 整合和统一分散的文档
  4. 废弃 hdfs3 库,转而采用 Apache Arrow 中的解决方案。
  5. 继续进行增量训练模型的超参数选择工作
  6. 发布两个小型的错误修复版本
  7. 来自 Pangeo 社区关于将 Binder 与 Dask 结合的博文
  8. Skein/Yarn 更新

1:更新 Dask 示例以使用 JupyterLab 扩展

新的 dask-labextension 将 Dask 的仪表盘图表嵌入到 JupyterLab 会话中,以便您可以直接从 Jupyter 轻松访问有关计算的信息。这是几周前作为上一个发布文章的一部分发布的。

然而自那时以来,我们已将其连接到我们的实时示例系统,该系统允许用户使用 mybinder.org 在小型云实例上试用 Dask。如果您想一起试用 Dask 和 JupyterLab,请前往此处

Binder

感谢 Ian Rose 管理这项工作。

2:将 Dask 示例渲染为静态文档

使用 nbsphinx Sphinx 扩展自动运行和渲染 Jupyter Notebooks,我们将实时示例库变成了静态文档,以便于查看。

这些示例目前可在 https://dask.org.cn/dask-examples/ 获取,并将很快在 examples.dask.org 以及所有 Dask 页面的导航栏中获取。

感谢 Tom Augspurger 整理了这一切。

3:在单一组织和风格下整合文档

Dask 文档目前分散在许多小型托管站点中,每个站点都与特定的子包相关联,例如 dask-ml、dask-kubernetes、dask-distributed 等。这简化了开发(鼓励开发人员在修改代码时修改文档),但导致用户体验碎片化,因为用户不知道如何发现和有效地浏览我们的完整文档。

为了解决这个问题,我们正在做两件事:

  1. 将所有站点迁移到 dask.org 域名下
  2. Anaconda Inc,一家雇佣了包括我在内的几位 Dask 开发人员的公司,最近将域名 dask.org 捐赠给了 NumFOCUS。我们一直在缓慢地将所有独立站点迁移到该位置用于我们的文档。
  3. 开发统一的 Sphinx 主题 dask-sphinx-theme
  4. 这既具有统一的样式,也包含一个可在项目之间自动共享的导航栏。导航栏使得发现和浏览内容变得容易,并且是我们可以在一个仓库中保持更新的内容。

您可以通过访问任何 Dask 站点(例如 docs.dask.org)查看其工作方式。

感谢 Tom Augspurger 管理这项工作,并感谢 Andy Terrel 耐心地处理 NumFOCUS 方面和域名方面的事情。

4:废弃 hdfs3 库

多年来,Dask 社区一直维护着 hdfs3 库,该库允许从 Python 本地访问 Hadoop 文件系统。该库使用 Pivotal 的 C++ 编写的 libhdfs3 库,在很长一段时间内是从 Python 成熟操作 HDFS 的唯一高性能方式。

然而自那时以来,PyArrow 开发了对标准 libhdfs 库的高效绑定,并通过其 Python 风格的 文件系统接口暴露出来,幸好该接口与 Dask 兼容。

我们现在已告诉人们使用 Arrow 解决方案一段时间了,并认为我们现在应该正式这样做(参见 dask/hdfs3 #170)。截至上一个错误修复版本,Dask 将默认使用 Arrow,并且虽然 hdfs3 库仍然可用,但 Dask 的维护者将来可能不会在其上投入太多时间。

感谢 Martin Durant 一直以来构建和维护 HDFS3。

5:增量训练模型的超参数选择

在 Dask-ML 中,我们继续致力于为实现了 partial_fit API 的模型选择超参数。我们构建了能很好地处理此问题的算法和基础设施,目前正在对 API、参数名称等进行微调。

如果您对此过程感兴趣,请前往 dask/dask-ml #356

感谢 Tom AugspurgerScott Sievert 进行了这项工作。

6:两个小型的错误修复版本

在情况稳定时,我们一直在努力增加错误修复版本的发布频率。自上次撰写以来,已经发布了两个次要的错误修复版本。您可以在此处阅读更多相关信息:

7:Binder + Dask

Pangeo 社区已经完成了将 Binder 与 Dask 集成的工作,并在此处撰写了关于该过程的文章:Pangeo 遇见 Binder

感谢 Joe Hamman 进行了这项工作并撰写了这篇博文。

8:Skein/Yarn 更新

将 Dask 部署到 Hadoop 集群的 Dask-Yarn 连接使用了一个库 Skein,以便轻松地从 Python 管理 Yarn 作业。

在过去几周,Skein 开展了大量活动,包括以下内容:

  1. 项目的 Web UI。参见 jcrist/skein #68
  2. 来自 Criteo 的一个在 Yarn 上运行 TensorFlow 的项目,该项目使用了 Skein。参见 github.com/criteo/tf-yarn

这项工作主要由 Jim Crist 和其他 Skein 贡献者管理。