roocs / 34e-mngmt

Management of 34e
BSD 2-Clause "Simplified" License
0 stars 0 forks source link

Provenance prototype #72

Closed agstephens closed 3 years ago

agstephens commented 4 years ago

@cehbrecht, @ellesmith88, let's discuss the provenance plan here. I will state a set of requirements and some suggestions, then we can discuss until we agree on a plan :-)

Terminology

Requirements

These are the requirements for our first provenance prototype:

agstephens commented 4 years ago

Suggestions for implementation

These are my initial suggestions, feel free to contest/improve them:

agstephens commented 4 years ago

@cehbrecht @ellesmith88 over to you - what are your thoughts?

ellesmith88 commented 4 years ago

I don't know if I fully understand the daops fix issue, but if we were to change the implementation of a fix then this would go out into the next version of daops. We could then create a new dated index to go along with this version and then only swap the alias over once the new version is in production.

This would potentially involve updating the fix records if the operands needed were changed and testing that they work, which could be tricky, but if there were a procedure for doing this it might be ok. To create the new index I think all the fixes have to be reindexed anyway (?) so this would probably have to happen anyway with a new release.

agstephens commented 4 years ago

Does this mean that we have to keep the entire history of all indexes in ElasticSearch? Or should we serialise them into GitHub? Maybe there aren't many...?

cehbrecht commented 4 years ago
* If _fixes_ are applied, then they need to be recorded in the PC

Would we like to record all applied fixes in the prov document? We could also point to a version of the used fixes. This could maybe even just a release documentation for the fixes.

I think the aim of the prov document is not to make the results reproducible but to give indicators why the results might have changed with a newer version.

cehbrecht commented 4 years ago

@agstephens I could start with a prototype in rook. I don't think it belongs to rook (maybe to daops, or daprov). But for prototyping it is easier to start here. We can use the prototype for further discussion ... to have something visible which then gets also returned with a wps request.

agstephens commented 4 years ago

+1

agstephens commented 3 years ago

Prototype works :-)