Currently CDF has support for synthetic timeseries, but those are specified as a parameter to the API call, which means that every user has to specify it, and it is a different API call then the ordinary timeseries.
A very powerful feature would be to define a synthetic timeseries the same way as an ordinary timeseries, but it is not a persisted timeseries but instead an on-the-fly calculated timeseries.
Pros:
- It doesn’t fill up cdf with a lot of unnecessary persisted timeseries
- We avoid having to depend on a calculation function that will have lag, being vulnerable to going down, secret expired,+++
- Any UI or other functionality that consumes timeseries will automatically work
- It will be a “company” approved calculation
- We can add proper documentation, metadata, link it to the right assets (contextualisation),+++
Cons:
- Added computational cost
- Need to agree on how to treat the “endpoints” in the timerange, how to do the data point alignment, how to do fill etc
- If at some point the calculation need a different timeseries, or the calculation changes, the synthetic timeseries will not be valid for the historical data (can be handled with a range validity identifier)
The intention of this is to define relatively simple calculations. More complex calculations will be handled outside this framework.
Example could be: I need a timeseries for whether a well is flowing or not. It is a combination of the position of 3-4 chokes. Not all users will know which chokes, so by creating this predefined synthetic timeseries we have a “approved” way of doing this calculation.
Another relevant example is routing, which can be a combination of many different routing valves, requiring extensive investigation of P&IDs to figure out how to calculate.
Check the
documentation
Ask the
Community
Take a look
at
Academy
Cognite
Status
Page
Contact
Cognite Support