python - 如何最大化 from-rest group by 的单机 Dask 性能?
问题描述
我有一个大的 CSV,我读入 Dask 并像这样执行 group-by
import dask.dataframe as dd
aa = dd.read_csv("large.csv")
# takes 20 seconds
aa.var0.value_counts().compute()
它需要20秒。
但是,如果我将数据存储为镶木地板,那么相同的操作只需 7 秒。
aa.to_parquet("large.parquet")
aa = dd.read_parquet("large.parquet")
# takes 7 seconds
aa.var0.value_counts().compute()
我可以做些什么来进一步加快速度吗?一般问题是这样的:我有一个位于硬盘上的数据集(数据格式不受限制,但我只有一台机器,所以没有集群),如何最大化性能一个简单的 group-by 操作数据在磁盘上启动(即尚未加载到 RAM 中)?
解决方案
我相信这并不是 dask 特有的,而是由于 CSV 和 parquet 的格式化方式。
推荐阅读
- c# - 为什么在具体类定义中无法识别我的 C# 默认接口实现?
- azure-pipelines - 我应该如何处理 Azure Pipelines 中作业之间的中间构建文件?
- css - Vue中的过渡元素
- javascript - 不能用作 JSX 组件。它的返回类型“void”不是有效的 JSX element.ts(2786)
- java - 如何从同一生产者向不同的 Kafka 主题和模式注册表生成消息
- docker - Docker 只识别相对目录,不识别绝对目录
- vb.net - 覆盖参数 [ 和 ] 之间的文本文件
- tailwind-css - 从设计系统导出的 tailwind.dist.css 导致主项目中的 css 重复
- node.js - 如何使用 Joi 验证十进制数字的精度
- fetch - 通过 Office Scripts Fetch 调用 API 时出现 CORS 问题