class datacube.api.GridWorkflow(index, grid_spec=None, product=None)[source]

GridWorkflow deals with cell- and tile-based processing using a grid defining a projection and resolution.

Use GridWorkflow to specify your desired output grid. The methods list_cells() and list_tiles() query the index and return a dictionary of cell or tile keys, each mapping to a Tile object.

The Tile object can then be used to load the data without needing the index, and can be serialized for use with the distributed package.

__init__(index, grid_spec=None, product=None)[source]

Create a grid workflow tool.

Either grid_spec or product must be supplied.

  • index (datacube.index.Index) – The database index to use.

  • grid_spec (GridSpec) – The grid projection and resolution

  • product (str) – The name of an existing product, if no grid_spec is supplied.


__init__(index[, grid_spec, product])

Create a grid workflow tool.

cell_observations([cell_index, geopolygon, …])

List datasets, grouped by cell.

group_into_cells(observations, group_by)

Group observations into a stack of source tiles.


List cells that match the query.


List tiles of data, sorted by cell.

load(tile[, measurements, dask_chunks, …])

Load data for a cell/tile.

tile_sources(observations, group_by)

Split observations into tiles and group into source tiles