skyledge / asset-manager

Opensource Enterprise Asset Management Service
1 stars 0 forks source link

How do we model assets? #4

Open rafehi opened 5 years ago

rafehi commented 5 years ago

Modelling of assets is critical to the system and dictates whether we can compare fields across different asset types etc.

There are a number of different approaches we can take. Schemas allow us to know what type of data an asset expects. Asset hierarchies allow us group assets together. Fieldsets can be used to group fields that are assignable to an asset. Asset inheritance allows us to create more specific types of assets.

Examples: Schemas. Schemas allow us to know the type of an asset's field. For example, a car might have a current_speed field. The schema might tell us that it measures speed, in units km/hr. This then allows us to convert that field to other units, compare it against other vehicle types, etc. Asset hierarchy. A wind turbine is composed of blades, cooling unit and gearbox. Fieldsets. All assets might be expected to have a name, manufacturer, owner adnd status. These fields could be grouped into a default fieldset, which is then assigned to the asset type. Similarly, for vehicular assets, we might find that they all have distance_travelled, current_speed and current_location. We can create a mobile fieldset and assign that to the car asset type. This allows us to easily compose new asset types for known fields. Asset inheritance. It might be desirable to inherit more specific asset types from less specific types. For example, we might have an electric vehicle asset, which extends a vehicle, and adds fields such as battery_capacity.

rafehi commented 5 years ago

Google makes a distinction between three types of device data:

image

They also define commands (instructions to devices to perform actions) and operation data (e.g. cpu, battery level etc, which can be stored as either state or telemetry data).

https://cloud.google.com/solutions/iot-overview

rafehi commented 5 years ago

Results of researching different products: