【发布时间】:2019-01-17 04:37:14
【问题描述】:
我正在尝试使用 Dask 通过 Jupyter 笔记本在我的笔记本电脑上处理大于内存的数据集。数据在 Amazon-s3 存储桶中存储为多个 csv 文件。
第一个单元运行得很快,我可以按预期在端口 8787 上查看 Dask 仪表板。
from dask.distributed import Client
import dask.dataframe as dd
client = Client()
client
第二个单元格在 55.1 秒内执行,这对我来说似乎很奇怪,因为它实际上并没有提取任何数据。
df = dd.read_csv('s3://*/*/*.csv', assume_missing=True)
这第三个单元格挂起 11 分钟,然后我在仪表板的任务流中看到任何内容,但随后它按预期工作,总共执行了 13m 3s。
df['timestamp']=dd.to_datetime(df['timestamp'], unit='ms')
df = df.set_index('timestamp')
df = client.persist(df)
这似乎与Dask Distributed client takes to long to initialize in jupyter lab 在精神上相似,但我的客户开始正常,最终一切正常。我错过了一些明显的东西吗?谢谢!
【问题讨论】:
-
我忘记了版本! python 3.6 和 dask 0.19.4
-
"许多 csv 文件" - 多少?
df有多少个分区? -
year/month/day/hour/3 or 4 files每个大约 500 到 1000 行。只有 2018 年和 2019 年的文件。所以大约有 40,000 个分区。然而,我引用的时间是从一个月开始的。
标签: amazon-s3 jupyter-notebook dask dask-distributed