Skip to main content

Interface for using cubed with xarray for parallel computation.

Project description

Note: this is a proof-of-concept, and many things are incomplete, untested, or don't work.

cubed-xarray

Interface for using cubed with xarray.

Requirements

  • Cubed version >=0.14.2
  • Xarray version >=2024.02.0

Installation

Install via pip

pip install cubed-xarray

or conda

conda install -c conda-forge cubed-xarray

Importing

You don't need to import this package in user code. Once poperly installed, xarray should automatically become aware of this package via the magic of entrypoints.

Usage

Xarray objects backed by cubed arrays can be created either by:

  1. Passing existing cubed.Array objects to the data argument of xarray constructors,
  2. Calling .chunk on xarray objects,
  3. Passing a chunks argument to xarray.open_dataset.

In (2) and (3) the choice to use cubed.Array instead of dask.array.Array is made by passing the keyword argument chunked_array_type='cubed'. To pass arguments to the constructor of cubed.Array you should pass them via the dictionary from_array_kwargs, e.g. from_array_kwargs={'spec': cubed.Spec(allowed_mem='2GB')}.

If cubed and cubed-xarray are installed but dask is not, then specifying chunked_array_type is not necessary, as the entrypoints system will then default to the only chunked parallel backend available (i.e. cubed).

Sharp Edges 🔪

Some things almost certainly won't work yet:

and some other things might work but have not yet been tried:

  • Saving to formats other than zarr

In general a bug could take the form of an error, or of a silent attempt to coerce the array type to numpy by immediately computing the underlying array.

Tests

Integration tests for wrapping cubed with xarray also live in this repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cubed-xarray-0.0.6.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

cubed_xarray-0.0.6-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file cubed-xarray-0.0.6.tar.gz.

File metadata

  • Download URL: cubed-xarray-0.0.6.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.16

File hashes

Hashes for cubed-xarray-0.0.6.tar.gz
Algorithm Hash digest
SHA256 b8e4428882a741bb37c3af4425963a60e2b082d2ebf0b8aa91717833a43ec303
MD5 315aeedb89e9db70b6b61aa489255e46
BLAKE2b-256 0b013b0e48f650d1baed39f8857684887fa6215b4e28a001f090c0f082efeac1

See more details on using hashes here.

File details

Details for the file cubed_xarray-0.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for cubed_xarray-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a990411e0df718b0f603a257de8bcce18835ab9588be9d5ede531bb23c975377
MD5 5cb905af72f29d8ee6374bee51bc5f4e
BLAKE2b-256 f5eadc42dba968d75581560df3c2a22c01b1f3337dca63491ffd4dcada5b872c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page