z3fdb.simple_store_builder#

Classes#

SimpleStoreBuilder

Builder to create a Zarr store with FDB backing.

Module Contents#

class SimpleStoreBuilder(fdb_config_file: pathlib.Path | None = None)#

Builder to create a Zarr store with FDB backing.

This builder will create a Zarr store with a Zarr Array at its root (“/”) containing the data from your MARS request(s).

Parameters:

fdb_config_file – Optional path to FDB config file. If not set normal FDB config file resolution is applied.

_builder#
add_part(mars_request_key_values: str, axes: list[pychunked_data_view.AxisDefinition], extractor_type: pychunked_data_view.ExtractorType) None#

Add a MARS request to the view.

Parameters:
  • mars_request_key_values (str) –

    A string with fully spefified MARS key:values pairs.

    For example:

    type=an, class=ea, domain=g, expver=0001, stream=oper, date=2020-01-01/to/2020-01-04, levtype=sfc, step=0, param=167/131/132, time=0/to/21/by/3

  • axes (list of AxisDefinition) – List of AxisDefinitions that describe how axis in the MARS request are mapped to axis in the Zarr array.

  • extractor_type – Defines how to extract data from FDB. Currently only ExtractorType.GRIB is supported.

extend_on_axis(axis: int) None#

Defines the extension axis when multiple parts are added.

Parameters:

axis (int) – Index of the axis that is extendet when multiple parts have been added.

build() zarr.abc.store.Store#

Build the store from the inputs.

Raises:

Z3fdbError if store cannot be created.