Skip to content

Commit 40a4759

Browse files
committed
begin intro
1 parent 4ce68c8 commit 40a4759

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

docs/protocol/core/v3.0.rst

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,43 @@ This document was produced by the `Zarr core development team
4545
<https://github.com/orgs/zarr-developers/teams/core-devs>`_.
4646

4747

48+
Introduction
49+
============
50+
51+
This specification defines a protocol for storage and retrieval of
52+
data that is organised as one or more multidimensional arrays. This
53+
type of data is common in scientific and numerical computing
54+
applications. Many domains are facing computational challenges as
55+
increasingly large volumes of data are being generated, for example,
56+
via high resolution microscopy, remote sensing imagery, genome
57+
sequencing or numerical simulation. The primary motivation for the
58+
development of Zarr has been to help address this challenge by
59+
enabling the storage of large multidimensional arrays in a way that is
60+
compatible with parallel and/or distributed computing applications.
61+
62+
This protocol specification is intended to supersede the `Zarr storage
63+
specification version 2
64+
<https://zarr.readthedocs.io/en/stable/spec/v2.html>`_ (Zarr v2). The
65+
Zarr v2 specification has been implemented in several programming
66+
languages and has been used successfully to store and analyse large
67+
scientific datasets from a variety of domains. However, as experience
68+
has been gained, it has become clear that there are several
69+
opportunities for modest but useful improvements to be made in the
70+
protocol, and for establishing a foundation that allows for greater
71+
interoperability, whilst also enabling a variety of more advanced and
72+
specialised features to be explored and developed.
73+
74+
This protocol specification also draws heavily on the `N5 API and
75+
file-system specification <https://github.com/saalfeldlab/n5>`_, which
76+
was developed in parallel to Zarr v2 and has many of the same design
77+
goals and features. This specification defines a core set of features
78+
at the intersection of both Zarr v2 and N5, and so aims to provide a
79+
common target that can be fully implemented across multiple
80+
programming environments and serve a wide range of applications.
81+
82+
83+
84+
4885
Main difference with v2
4986
=======================
5087

0 commit comments

Comments
 (0)