Add Icechunk read-only driver

[Icechunk] (https://icechunk.io/en/stable/overview) is an open-source
transactional storage engine for :ref:`raster.zarr`. Icechunk enables using
Zarr as a true database for array data.

The GDAL Icechunk driver supports datasets using Icechunk v1 and v2 storage
format, hosted on local or cloud storage

It supports:

- "inline chunk references": Zarr chunks are stored directly in a "manifest" file.

- "native chunk references": chunks stored in a file under the :file:`chunks`
  sub-directory of an Icechunk repository

- and "virtual chunk references": chunk content is not directly stored in the
  Icechunk repository. A URL to a remote file, with an offset and length in it,
  is stored instead. This is a mechanism typically used to expose netCDF/HDF5
  files as Zarr, without duplicating actual pixel data. The URL of virtual
  references is automatically morphed into GDAL VSI prefixes (i.e.
  ``https://`` --> ``/vsicurl/https://``, ``s3://`` --> ``/vsis3/``, etc.)

Ex:
```
gdal mdim info /vsis3/icechunk-public-data/v1/glad --config AWS_NO_SIGN_REQUEST YES
```

Uses a /vsiicechunk/ virtual file systems to integrate with the Zarr
driver.

Build requirements: libzstd >= 1.4 and Zarr driver

Also available 2 GDAL CLI commands:

- gdal driver icechunk list-branches
- gdal driver icechunk list-tags
This commit is contained in:
Even Rouault
2026-06-11 16:35:43 +02:00
parent eafd4d8653
commit f0a75a2093
245 changed files with 10134 additions and 7 deletions
@@ -150,6 +150,7 @@ Supported Formats: (ro:read-only, rw:read-write, +:write from scratch, u:update,
EHdr -raster- (rw+uv): ESRI .hdr Labelled (*.bil)
ISCE -raster- (rw+v): ISCE raster
Zarr -raster,multidimensional raster- (rw+uvs): Zarr (*.zarr)
Icechunk -raster,multidimensional raster- (rov): Icechunk
RCM -raster- (rovs): Radarsat Constellation Mission XML Product
MiraMonRaster -raster- (rwvs): MiraMon Raster Images (*.rel, *.img)
HTTP -raster,vector- (ro): HTTP Fetching Wrapper
@@ -149,5 +149,6 @@ Supported Formats: (ro:read-only, rw:read-write, +:write from scratch, u:update,
EHdr -raster- (rw+uv): ESRI .hdr Labelled (*.bil)
ISCE -raster- (rw+v): ISCE raster
Zarr -raster,multidimensional raster- (rw+uvs): Zarr (*.zarr)
Icechunk -raster,multidimensional raster- (rov): Icechunk
RCM -raster- (rovs): Radarsat Constellation Mission XML Product
HTTP -raster,vector- (ro): HTTP Fetching Wrapper
+1
View File
@@ -76,6 +76,7 @@ repos:
frmts/pcidsk/sdk|
frmts/grib/degrib/degrib|
frmts/grib/degrib/g2clib|
frmts/icechunk/generated|
gcore/sse2neon.h|
port/utf8.h|
ogr/ogrsf_frmts/adbc/ogr_adbc_internal.h|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
{"snapshot":"7D6TE42K99AX675NFRDG"}
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
{"snapshot":"4HY7Z2Z0STABHN4GKHZG"}
@@ -0,0 +1 @@
{"snapshot":"4HY7Z2Z0STABHN4GKHZG"}
Binary file not shown.
@@ -0,0 +1 @@
ICE🧊CHUNK 

Some files were not shown because too many files have changed in this diff Show More