Skip to main content

Energyworx uses several objects to classify and handle data in the platform. The following describes the available objects and the properties associated to them.

Platform Design Principle

The Energyworx platform is designed as an append-only system for auditing purposes. This means that data, once ingested, is meant to persist in the system to maintain a complete audit trail and data lineage. While this ensures data integrity and regulatory compliance, it does have implications for data management in development and testing environments.

Impact on API Operations: For resources with built-in versioning (datasources, tags, and datapoints), the platform uses a create-or-update pattern. This means that "create" API endpoints may also update existing resources when called with an existing resource ID, rather than rejecting the operation as a duplicate. This design choice supports re-ingestion workflows and maintains audit trails while allowing properties to be refreshed as needed.

Datasource

One of our key components in enabling you to get more out of your valuable data, is the concept of Datasources. We categorise parts of your data as Datasources, which can then be used for further analysis. The Datasource object represents an object which generates data. Examples of this includes, but is not limited to: meters, RTUs, IoT devices, humans, cars, a heart beat monitor, etc.

Datasources can be any type of meter or sensor, or a market profile. Basically, any kind of device that stores valuable data, or a profile containing it. Within our software, the datasources come with a specific name and a description.

Two types of features are part of your datasources:

  • Timeseries data, by Channels.
  • Slowly Changing Dimensions, by tags and properties

Note: Tags and properties can be assigned automatically by the Transformation Configuration. They are optional, and can be maintained in the console.

Datasource Classifier

Datasource Classifiers help organize Datasource objects into groups, such as meters or IoT devices. A Datasource Classifier can have many Datasources associated to it, but a Datasource should only belong to one Datasource Classifier. A Classifier consists of a name and a description, and the datasource type is set to either ‘power’, ‘water’, or ‘gas’.

Tag

Tags are non-timeseries or metadata about a Datasource object. This can have a time dimension associated to them in a concept called “Slowly Changing Dimensions” or “SCD”. Each Tag can have multiple properties associated to them, which have a key and value.

A single tag should contain all information that changes together. Such that a collection of tags tells you the state of a Datasource.

Slowly Changing Dimensions come with both a version date and a valid from date (see Event Sourcing). See the following example:

Non Slowly Changing Dimensions do come with a version date, but without a valid from date. Think of unique identification codes, product specifications etc.

Channel

Channels refer to time series data associated to a Datasource.

Channel Classifier

Channel Classifiers help organize Channel objects into groups. A Channel Classifier can have many channel associated to it, but a Channel should only belong to one Channel Classifier.

Time series

A time series is a collection of Datapoints on a date time index.