Skip to main content

Storage and Manifests

This page documents the persistent runtime layout behind datasets, jobs, cache state, and generated outputs.

Storage Structure Diagram​

Persistent Layout​

The service uses DATA_ROOT, which defaults to /data, as the root for persisted runtime state.

Important subpaths:

PathPurpose
/data/uploadsuploaded source files
/data/extentsgenerated extent GeoJSON files
/data/terrainterrain RGB outputs
/data/mago-inputintermediate Mago input assets
/data/mago-terraingenerated Mago terrain outputs
/data/thumbnailsthumbnail cache when disk mode is enabled

Manifest Files​

FilePurpose
/data/datasets.jsondataset registry
/data/terrain_datasets.jsonterrain registry
/data/jobs.jsonjob history and latest results
/data/jobs_deleted.jsondeleted job archive
/data/server_config.jsonpersisted runtime configuration

Manifest Interaction Diagram​

Startup Behavior​

At application startup the service:

  • ensures required storage directories exist
  • loads persisted config into memory
  • refreshes auth and access rules
  • refreshes MapCache config
  • prunes dataset records whose backing files are missing
  • regenerates extent footprints when needed

Operational Implication​

This means file-level state matters. If manifests are edited manually or a backing file disappears, the next startup can change visible state significantly. Treat the contents of DATA_ROOT as application state that should be backed up and managed deliberately.

Practical Reading Order​

  • Use C4 Architecture for the high-level structural model.
  • Use Workflow Diagrams for operator and data lifecycle views.
  • Use this page when you need to know exactly where persistent state lives and how manifests interact.