【问题标题】:How to use asynchronous dask client如何使用异步dask客户端
【发布时间】:2020-08-02 15:42:14
【问题描述】:

我正在尝试理解 dask 异步客户端,但仍有一些问题。这是我的例子:

dask_client = await Client(
    address=settings.DASK_SCHEDULER,
    asynchronous=True
)
df_graduates = dd.read_parquet(
    '/vagrant/shared/storage/F_Graduates'
)
df_d_emp = dd.read_parquet(
    '/vagrant/shared/storage/D_Employer',
    columns=['Business_Size'])
df_graduates = df_graduates.merge(df_d_emp, on='Employer_ID', how='inner')
df_graduates = await dask_client.compute(df_graduates)

我的问题是:

  1. 我应该在dd.read_parquet 上使用await 吗?
  2. 我应该在merge 上使用await 吗?
  3. 如果我为read_parquet 设置了错误的列名,它会在dask_client.compute 之前立即引发异常。为什么会发生?如果客户端异步,它应该只创建任务,而不是执行它。

【问题讨论】:

    标签: python-asyncio dask dask-distributed dask-dataframe


    【解决方案1】:

    计算方法对异步不友好。您必须改用await client.compute(df_graduates)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-29
      • 1970-01-01
      • 2017-12-15
      • 2017-08-30
      • 1970-01-01
      相关资源
      最近更新 更多