[persistence] PersistenceConfig#

TOML section: [persistence]

Pydantic model: PersistenceConfig defined in hydromodpy.core.config_kit.persistence.

Source on GitHub

Orthogonal switch governing every persistence sink.

Toggles are independent: disabling save_zarr does not silence the catalog, and vice versa. save_catalog is the master switch for the project DuckDB; when False, every write through SimulationCatalog becomes a no-op.

Show fields:

Fields#

save_catalog

bool default = True user source

Persist DuckDB rows (simulations, parameters, metrics, calibration_iterations). When False, catalog writes are skipped.

save_zarr

bool default = True user source

Persist per-simulation field arrays (head, concentration, derived) into the Zarr store.

save_parquet

bool default = True user source

Persist per-simulation tabular outputs (timeseries, budgets, mass_balance) as Parquet files.

save_lock

bool default = True user source

Generate and refresh the hydromodpy.lock reproducibility manifest after data ingestion.

compression

Literal[‘none’, ‘zstd’, ‘lz4’, ‘gzip’, ‘snappy’] default = “zstd” dev source

Codec used for Zarr field arrays and Parquet tables. ‘none’ disables compression.

compression_level

int default = 3 dev source

Compression level (codec-dependent). Ignored when compression=’none’.

Starter TOML snippet#

Click to expand a copy-pasteable [persistence] TOML skeleton

Copy this block into your project.toml and uncomment the lines you want to set. Sub-tables ([parent.subfield]) appear in the order Pydantic expects them.

[persistence]
# save_catalog = true
# save_zarr = true
# save_parquet = true
# save_lock = true

Entity-relationship diagram#

ER diagram for PersistenceConfig

Click to zoom and pan. Press Esc or click outside to close.