首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dask计算不能并行执行

dask计算不能并行执行
EN

Stack Overflow用户
提问于 2016-02-20 06:31:27
回答 1查看 1.9K关注 0票数 8

我有一个json文件的目录,我正在尝试将其转换为dask DataFrame并将其保存到castra。共有200个文件,其中包含O(10**7)条json记录。代码非常简单,很大程度上遵循了教程示例。

代码语言:javascript
复制
import dask.dataframe as dd
import dask.bag as db
import json
txt = db.from_filenames('part-*.json')
js = txt.map(json.loads)
df = js.to_dataframe()
cs=df.to_castra("data.castra")

我在一台32核的机器上运行它,但代码只100%地利用了一个核心。从文档中我的理解是,这段代码是并行执行的。为什么不是呢?我是不是误解了什么?

EN

回答 1

Stack Overflow用户

发布于 2016-02-20 07:04:10

您的最终集合是dask dataframe,默认情况下它使用线程,您必须显式地告诉dask使用进程。

您可以在全局范围内执行此操作

代码语言:javascript
复制
import dask
dask.config.set(scheduler='multiprocessing')

或者只在to_castra调用时执行此操作

代码语言:javascript
复制
df.to_castra("data.castra", scheduler='multiprocessing')

此外,作为警告,卡斯特拉主要是一个实验。它相当快,但也不像HDF5或拼花那样成熟。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35516305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档