We are keeping an eye out for interesting time series API implementations as we are profiling APIs for the Streamdata.io API Gallery. The demand for common patterns when it comes to deploying time series APIs is increasing, so we want to make sure that we are documenting every API we come across so we can use all of our research as an ongoing reference. Time series data is highly valued in financial circles–something that is only growing with the introduction of Internet of Things (IoT) data.
While we were profiling the industrial Internet of Things platform Predix, we found the aggregate elements of their API worth noting. The service provider offers up 16 aggregate data points when it comes to adding and retrieving your IoT related data:
– Maximum – Returns the maximum value data point for the time range
– Trend Mode – Returns the maximum and minimum value data point for the time range
– Count – Returns the number of data points
– Scale – Scales each data point by a factor
– Interpolate – Does linear interpolation for the chosen window
– Sum – Adds the data points together
– Difference – Returns the difference between successive data points
– Gaps – Marks gaps in data according to sampling rate with a null data point
– Sampler – Returns the sampling rate of change for the data points
– Divide – Divides each data point by a divisor
– Minimum – Returns the minimum value data point for the time range
– Average – Returns the average of the data point set
– Least Squares – Returns a best fit line through the data points using the least squares algorithm
– Percentile – Returns the percentile of the data range
– Standard Deviation – Returns the standard deviation of the time series
– Rate – Returns the rate of change for the data points
We are profiling the overall approach by Predix when it comes to delivering their industrial IoT API, as well as the time series portion, but we thought these aggregate functions were something unique (so far). We will be looking for this design pattern in other time series APIs. To date, we’ve seen different approaches to providing time series access, but haven’t come across an aggregate approach with these types of functions. We are just getting started with this time series API research, and will be working our way through different types of APIs we are profiling, and once we’ve aggregated enough of them, we will begin looking for the common patterns, as well as keep showcasing the unique approaches like this one from Predix.
There is a wealth of time series APIs out there, spread across many different industries. Our goal is to try and identify where they are and document the common approaches. Once we’ve covered a significant portion of the landscape we’ll consider publishing a single white paper on the strongest patterns, as well as the most unique and interesting approaches. Financial and Internet of Things are definitely the most interesting areas we are coming across so far, but we are looking for time series data APIs serving up anything of value. If you know of any valuable time series APIs that you think we should be considering we’d love to get a tip, helping us find the most relevant use cases out there.