Python Bindings (zarrs-python)

zarrs_python_ver zarrs_python_doc zarrs_python_repo

The zarrs(https://github.com/ilan-gold/zarrs-python) Python package exposes a high-performance codec pipeline to the zarr reference implementation that uses zarrs under the hood. There is no need to learn a new API and it is supported by downstream libraries like dask.

zarrs-python implements the ZarrsCodecPipeline. It can be used by the reference zarr Python implementation (v3.0.0+) for improved performance over the default BatchedCodecPipeline.

warning

zarrs-python is highly experimental and has some limitations compared to the reference implementation.

Enabling zarrs-python

The ZarrsCodecPipeline is enabled as follows:

from zarr import config
import zarrs # noqa: F401

config.set({"codec_pipeline.path": "zarrs.ZarrsCodecPipeline"})

tip

The zarrs-python bindings are located in a repository called zarrs-python, but the Python package is called zarrs.

Downstream libraries that use zarr internally (dask, xarray, etc.) will also use the ZarrsCodecPipeline.