Skip to content

lulzzz/aika

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aika

Aika ("time" in Finnish; pronounced EYE-kuh) is a time-based data historian service, written in C# using .NET Standard 2.0, suitable for use with IoT devices and services that use industrial process data.

Aika delegates the actual historian functionality to a back-end class implementing its IHistorian interface, allowing it to be used both with bespoke data-storage services, and with existing industrial plant historians (e.g. OSIsoft PI). The repository includes the following back-end storage implementations:

The repository also includes an ASP.NET Core 2.0 project that exposes Web API controllers for querying, writing to, and configuring historian tags; SignalR is used to manage real-time data subscriptions, so that subscribers can receive changes in value as soon as they are recorded.

Getting Started

Look at the sample app for an example of how to host Aika using ASP.NET Core.

The sample app uses JWT bearer tokens for authentication. This requires some additional setup steps. For more information, visit the wiki.

If you want to use another form of authentication (e.g. Windows authentication), you will need to modify the authorization policies to perform role-based authorizaton. The wiki contains instructions for how to do this.

Data Aggregation

Aika includes built-in support for aggregation of raw data for historian implementations that do not support this capability natively (e.g. interpolation, minimum/maximum/average values calculated over a set interval).

Exception and Compression Filtering

When values are written to Aika, exception and compression filters are applied to the incoming values, to reduce the volume of data that is actually recorded, while maintaining the shape of the data (and ensuring that meaningful value changes are recorded).

The wiki describes this in more detail.

Implementing New Drivers

The wiki contains information about how to implement new back-end historian drivers.

About

A time-based data historian, for recording IoT or industrial process data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages