equinor / fmu-dataio

FMU data standard and data export with rich metadata in the FMU context
https://fmu-dataio.readthedocs.io/en/latest/
Apache License 2.0
10 stars 15 forks source link

Support for Webviz TimeSeriesPlugin #215

Open perolavsvendsen opened 2 years ago

perolavsvendsen commented 2 years ago

Issue describing steps to undertake to support the TimeSeriesPlugin usecase in Webviz.

Requirements: SMRY-data/timeseries shall be supported by fmu-dataio, so that end users can use fmu-dataio for exporting such data with rich metadata according to the FMU standard. The metadata shall support the use case of migrating the TimeSeriesPlugin to use FMU results through Sumo.

Definition of Done: Necessary functionality is included in fmu-dataio to enable the TimeSeriesPlugin to work (either in current, or improved, state). TimeSeriesPlugin is functional on FMU results through Sumo.

Suggested first iteration feedback loop:

  1. Start point is that SMRY data exists on disk during an FMU run. Establish a standalone Python script that 1) initializes fmu-dataio, 2) fetches the SMRY data from disk, 3) adds rich metadata, and 4) dumps data + metadata back to disk. Definition of done: It is possible, in a development setting, to produce SMRY-data with rich metadata on disk. Iteration with Webviz.
  2. Building on feedback loop 1: Define what TimeSeries data should look like in the schema. E.g. define the data model, following the existing patterns in fmu-dataio/schema. Iteration with Webviz.
  3. Add Sumo upload. Iteration with Webviz.

This does not necessarily happen in ordered fashion, but recommend to wait with 3 until certain degree of stability.

Identified subtasks (all are iterative):

This issue relates to the larger task described here: https://github.com/equinor/webviz-subsurface/issues/1049

perolavsvendsen commented 2 years ago

Link to old code in first "proof of concept". The linked code was ran as a FORWARD_MODEL. It stopped pending functionality in fmu-dataio to take configuration/arguments from an external file (to avoid hard-coding in the job). (The interface for passing arguments to the FORWARD_JOB is too limited to ferry the necessary arguments from the config file.)

https://github.com/perolavsvendsen/webviz-subsurface/blob/06004fdcc05370a46518e3215229bcb07c73fc6e/webviz_subsurface/ert_jobs/smry2arrow.py#L157

perolavsvendsen commented 2 years ago

Offline discussions:

@rnyb @sago64