Skip to main content

prefect_dask.utils

Utils to use alongside prefect-dask.

Functions

get_dask_client

Yields a temporary synchronous dask client; this is useful for parallelizing operations on dask collections, such as a dask.DataFrame or dask.Bag. Without invoking this, workers do not automatically get a client to connect to the full cluster. Therefore, it will attempt perform work within the worker itself serially, and potentially overwhelming the single worker. When in an async context, we recommend using get_async_dask_client instead. Args:
  • timeout: Timeout after which to error out; has no effect in flow run contexts because the client has already started; Defaults to the distributed.comm.timeouts.connect configuration value.
  • client_kwargs: Additional keyword arguments to pass to distributed.Client, and overwrites inherited keyword arguments from the task runner, if any.
Examples: Use get_dask_client to distribute work across workers.

get_async_dask_client

Yields a temporary asynchronous dask client; this is useful for parallelizing operations on dask collections, such as a dask.DataFrame or dask.Bag. Without invoking this, workers do not automatically get a client to connect to the full cluster. Therefore, it will attempt perform work within the worker itself serially, and potentially overwhelming the single worker. Args:
  • timeout: Timeout after which to error out; has no effect in flow run contexts because the client has already started; Defaults to the distributed.comm.timeouts.connect configuration value.
  • client_kwargs: Additional keyword arguments to pass to distributed.Client, and overwrites inherited keyword arguments from the task runner, if any.
Examples: Use get_async_dask_client to distribute work across workers.