关于黄昏。
我想将 parquet 文件读取为 df 并运行 groupby 函数
我的问题是为什么我应该先运行这段代码?
from dask.distributed import Client, progress
client = Client()
client
Run Code Online (Sandbox Code Playgroud)
不仅仅是
import dask.dataframe as dd
df = dd.read_parquet(r'C:\Users\ggg\mis_1.parquet')
g=df.groupby('id')['id'].count().compute()
Run Code Online (Sandbox Code Playgroud)
对我来说,没有客户它效果更好
您应该阅读此页面来比较调度程序:https://docs.dask.org/en/stable/scheduler-overview.html
如果您没有client,您将使用默认调度程序进行操作,这将是数据帧操作的线程调度程序。如果它的开销极低,并且通过在进程内占用相同的内存空间来避免内存复制。然而,它并不那么智能,并且对于持有 GIL 的函数来说效果很差。如果它适合您,请使用它!
分布式调度程序提供了更多选项。您可以选择线程/进程组合,甚至可以让所有调度程序和线程处于进程中(这应该与简单的线程调度程序一样执行。此外,它还通过仪表板提供对内存管理和诊断的更多控制。当然,如果您确实需要将计算分布在多台计算机上,这是您唯一的选择。此选项通常是更好的选择,因此通常推荐使用。但是,Client()仅提供默认选项,这可能不是可选的。
| 归档时间: |
|
| 查看次数: |
672 次 |
| 最近记录: |