Retrieving multiple Event Frame PI values slow.

Discussion created by williamsd on Jun 28, 2012
Latest reply on Jul 5, 2012 by MvanderVeeken

Question on retrieving 15 minute range event frame PI calculated data on AF2.4.


Using linq to query the values in 2 different ways from a Collection of event frames in my own web service.


From c In myAFCollection Order By c.StartTime Select


From a In c.Attributes.GetValue Select New XElement(a.Attribute.Name, a.ToString) it returns 9408 values in 196 seconds and I believe this is done in one call for all attributes in the event frame.


From a In c.Attributes Select New XElement(a.Name, a.GetValue.ToString) it returns 9408 values in 204 seconds and I believe this is done in individual calls for each attribute in the event frames.


I am not seeing a lot of performance difference and I do have indexing turned on for each attribute.


If I was to do this in real time( at least 20 x more event frames to query) for reporting in SSRS or Crystal reports  this would be very slow. I need much better performance to plot graphs in real time. I would like to avoid transferring the data to SQL or xml if at all possible to gain better performance.


Hoping you may have suggestions on how to improve this retrieval.


Ideally if the values stored per each Event Frame were stored statically at the time of creation that would be a huge time saver as the .getvalue call would not have to hit PI to retrieve the data.


Any help appreciated.


Derrick Williams


RtTechSoftware Inc.