AnsweredAssumed Answered

Best Practice for Trending PI Data in the Cloud?

Question asked by pverey Champion on Jun 23, 2017
Latest reply on Jun 23, 2017 by Lonnie Bowling

We all know that if we need to trend time-series data from PI we can use PIPoint.PlotValues to control the number of values returned, maintain fidelity, and not overload the range of pixels.

Suppose now that the PI time-series data has found its way into an Azure database - PI -> Azure IoT Hub -> Azure Stream Analytics -> Azure SSQ Database - and what we want to do is trend that data using Kony MobileFabric. Straightforward enough.


BUT, the PI data archive is found to have on average one event every five minutes and we have five years of data, that's roughly 525k events in the SQL table. The problem I have is that the cloud application needs all the data for analysis but trending a five-year period is unachievable without a function such as PlotValues. How can I achieve the same functionality in the cloud?


I have considered using the stream analytics Tumbling Window SQL function and averaging over a longer period but then we get into the problems of time-weighting and changing the SQL select for each new zoom condition. I am told that the trend data must come from the cloud database and I am not able to go back to PI using the AFSDK for the plot data.


How do other trending packages cope with more values than there are pixels to paint? Any ideas would be helpful.