Introduction
note
🚧 This book is under construction!
zarrs
- A Rust Library for the Zarr Storage Format
zarrs
is a Rust library for the Zarr V2 and Zarr V3 array storage formats.
If you don't know what Zarr is, check out:
- the official Zarr website: zarr.dev, and
- the Zarr V3 specification.
zarrs
was originally designed exclusively as a Rust library for Zarr V3.
However, it now supports a V3 compatible subset of Zarr V2, and has Python and C/C++ bindings.
This book focuses mostly on the Rust implementation.
Using zarrs
with zarr-python
is the reference Python Zarr implementation.
The zarrs
Python bindings expose a high-performance codec pipeline to zarr-python
that uses zarrs
under the hood.
There is no need to learn a new API and it is supported by downstream libraries like dask
.
tip
Skip to the Python Bindings Chapter if you are not interested in the Rust library.
🚀 zarrs
is Fast
The repository includes benchmarks of zarrs
against other Zarr V3 implementations.
Check out the benchmarks below that measure the time to round trip a \(1024x2048x2048\) uint16
array encoded in various ways:
More information on these benchmarks can be found in the repository.