bluesky / event-model

data model for event-based data collection and analysis
https://blueskyproject.io/event-model
BSD 3-Clause "New" or "Revised" License
13 stars 30 forks source link

WIP: make the timestamps part of the payload optional #173

Open tacaswell opened 4 years ago

tacaswell commented 4 years ago

Description

Makes 'timestamps' option in the event schema, event page schema, and compose_* APIs.

Motivation and Context

As discussed on today pilot call, the 'timestamps' entry makes a lot of sense when the ultimate source of the data is a control systems (and fundamentally asynchronous) but makes much less sense for the output of data analysis.

This is the minimal change to event model to allow this. There will need to be a companion change to databroker to cope with data that may not have timestamps.

dylanmcreynolds commented 4 years ago

Have you considered adding a field to schemas (and their documents) for "schema_version" so that people from the future can easily track which schema a particular instance was written against? This is a nice recommendation from the mongo folks (https://www.mongodb.com/blog/post/building-with-patterns-the-schema-versioning-pattern). It seems to me that this same logic would apply to non-mongo serializations as well.

Granted, this particular schema change is easy to imply..."oh, there's not a datastamp? must have been after that was optional." Making it explicit might still be nice.

danielballan commented 4 years ago

Related to https://github.com/bluesky/event-model/issues/3

Thanks for the Mongo reference, @dylanmcreynolds.