Uh oh!
There was an error while loading. Please reload this page.
Add DataTree.persist - #9682
Conversation
| # evaluate all the dask arrays simultaneously | ||
| evaluated_data = dask.persist(*flat_lazy_data.values(), **kwargs) |
There was a problem hiding this comment.
Actually I lied - there is a least a ToDo to be noted here that this should be routed through the chunkmanager. The chunkmanager doesn't have persist at the moment, but it should, even if dask is the only one to implement it.
There was a problem hiding this comment.
Sure, I just copied dataset persist, which looks like it hasn't been touched since long before the chunkmanager was introduced.
Should we add persist here as a non-abstract method on the chunkmanager classes? Looks pretty straightforward.
There was a problem hiding this comment.
Technically it could be a separate PR (pre-requisite to this one) but it's not super important to split them.
shoyer
commented
Oct 28, 2024
thanks @slevang ! |
* main: Add `DataTree.persist` (pydata#9682) Typing annotations for arithmetic overrides (e.g., DataArray + Dataset) (pydata#9688) Raise `ValueError` for unmatching chunks length in `DataArray.chunk()` (pydata#9689) Fix inadvertent deep-copying of child data in DataTree (pydata#9684) new blank whatsnew (pydata#9679) v2024.10.0 release summary (pydata#9678) drop the length from `numpy`'s fixed-width string dtypes (pydata#9586) fixing behaviour for group parameter in `open_datatree` (pydata#9666) Use zarr v3 dimension_names (pydata#9669) fix(zarr): use inplace array.resize for zarr 2 and 3 (pydata#9673) implement `dask` methods on `DataTree` (pydata#9670) support `chunks` in `open_groups` and `open_datatree` (pydata#9660) Compatibility for zarr-python 3.x (pydata#9552) Update to_dataframe doc to match current behavior (pydata#9662) Reduce graph size through writing indexes directly into graph for ``map_blocks`` (pydata#9658)
* main: (85 commits) Refactor out utility functions from to_zarr (pydata#9695) Use the same function to floatize coords in polyfit and polyval (pydata#9691) Add `DataTree.persist` (pydata#9682) Typing annotations for arithmetic overrides (e.g., DataArray + Dataset) (pydata#9688) Raise `ValueError` for unmatching chunks length in `DataArray.chunk()` (pydata#9689) Fix inadvertent deep-copying of child data in DataTree (pydata#9684) new blank whatsnew (pydata#9679) v2024.10.0 release summary (pydata#9678) drop the length from `numpy`'s fixed-width string dtypes (pydata#9586) fixing behaviour for group parameter in `open_datatree` (pydata#9666) Use zarr v3 dimension_names (pydata#9669) fix(zarr): use inplace array.resize for zarr 2 and 3 (pydata#9673) implement `dask` methods on `DataTree` (pydata#9670) support `chunks` in `open_groups` and `open_datatree` (pydata#9660) Compatibility for zarr-python 3.x (pydata#9552) Update to_dataframe doc to match current behavior (pydata#9662) Reduce graph size through writing indexes directly into graph for ``map_blocks`` (pydata#9658) Add close() method to DataTree and use it to clean-up open files in tests (pydata#9651) Change URL for pydap test (pydata#9655) Fix multiple grouping with missing groups (pydata#9650) ...
Also switches the underlying
persistcalls to be handled byChunkManagerEntrypoint. Only implemented on theDaskManagerso it's not an abstract method.DataTree.persist#9675whats-new.rstapi.rst