FS data lake
service-fs is the foundational storage layer for the platform's GIS pipeline — a flat-file data lake that stores raw geospatial points ingested from open sources (OpenStreetMap, Overture Maps Foundation) in separate retail and civic landing zones, available immediately to every downstream service without an ETL step. Retail records — commercial operators, anchor stores, fuel outlets — and civic records — hospitals, universities, transport hubs — are kept in distinct subtrees so the filtering and clustering services can work on each domain independently.
Key Takeaways
- Two separate landing zones — retail and civic — hold raw points from OpenStreetMap and Overture Maps Foundation. Downstream services read directly from the landing zones; no ETL transformation step sits between ingestion and consumption.
- Data persistence is decoupled from analytical logic. If
[[app-orchestration-gis]]is reprovisioned, the raw data assets inservice-fsremain intact and are immediately available to any replacement analytical layer. - The target production deployment is a low-overhead unikernel exposing a restricted API, with only the intelligence layers (
service-businessandservice-places) able to read raw data and write back processed results. Not yet built: today the landing zones are plain directories on the host filesystem, populated and read by ingestion/analysis scripts directly — no unikernel, no restricted API, no dedicatedservice-business/service-placescrates confirmed in the codebase yet. - The flat-file, open-format design avoids proprietary format lock-in. Raw geospatial records are stored as plain files readable by any toolchain in any decade.
Data Ingestion and Storage
The service maintains a unified filesystem structure with separate landing zones for retail and civic infrastructure data.
- Retail landing: raw commercial operator records ingested from open geospatial registries (OpenStreetMap, Overture Maps Foundation).
- Civic landing: raw civic and institutional facility records from the same open sources.
Architectural Role
As the stateful layer of the platform, service-fs is responsible for data persistence. It is designed to be independent of the analytical software — if the GIS orchestration layer is re-provisioned, the core data assets remain intact within this layer. The clean separation between data persistence and analytical logic is a core design invariant. This same separation principle extends to the WORM ledger used for institutional records; see FS architecture for the full four-layer design.
Unikernel Implementation (Planned)
The target production deployment is a low-overhead unikernel providing a restricted API for the service-business and service-places intelligence layers to read raw data and write back processed results, enforcing clean separation between storage and analysis concerns. Current state: the unikernel envelope does not exist yet — the landing zones described above are plain host-filesystem directories, read and written directly by the GIS ingestion and analysis scripts with ordinary file I/O. The retail co-location tier methodology describes how the clustering output is used to generate tier rankings, once that analysis layer is built.