8 Replies Latest reply on Feb 20, 2014 10:41 AM by Leonardo78

    Data load for summaries

    Leonardo78

      Greetings,

       

      i have a doubt regarding the Summaries2 method of IPIData interface. 

       

      Does the server calculate the summaries sending the single result (i.e. avg) to the client or the whole bunch of data is returned to the client which will proceed with the calculations?

       

      As you can understand, the amount of data transfer is peculiar for our applications.

       

       

       

      Best regards.

        • Re: Data load for summaries
          Roger Palmen

          EDIT: My apologies. Post below refers to AFSDK, while question was on PISDK... Please disregard!

           

           

           

          The summaries method runs on AF attributes. As the AF server only serves the AFmodel to an AFclient (read: AFSDK), it is the AFSDK that does the calculations / summaries. Any data that is required to calculate the summary is therefore pulled to the AFclient / AFSDK and the summary is calculated there.

           

          When using Abacus, this load can be pushed down to the calculation service of Abacus on the server.

           

          The important part to remember is that that AFserver only holds the model, and not the data in the model! (i know, with the notable exception of data contained in attributes with no DataReference).

           

          Although this requires some careful thought about volume of data, frequency of calculation, access paths, etc., i do want to note that the AFSDK is really, really fast. But be careful in defining your architecture!

            • Re: Data load for summaries
              xwang

              @Roger: thanks for your post to explain AF SDK working.  However, this question should refer to PI SDK.  AF SDK has no IPIDATA interface currently.

               

              @Leonardro: I think the method you used should be in IPIDATA2 interface.  I will check this with PI SDK developer to get the exact answer.

               

              Xi Wang

               

              vCampus team

                • Re: Data load for summaries
                  Leonardo78

                  @ Roger, thanks for your explanation but as Xi Wang expressed, my question was about PI SDK.

                   

                  @ Xi Wang, your correction is right, it's in the IPIDATA2 interface.

                   

                  Thank you for your dedication, I'll be waiting for the answer.

                    • Re: Data load for summaries
                      Rhys Kirk

                      The PI Server calculates summaries, as it does a single summary - take the Event Count summary for example, makes no sense to return all events within a timerange to be counted client side.

                       

                      In what way is the data transfer peculiar? You're only seeing a small amount of data transfered?

                        • Re: Data load for summaries
                          Leonardo78

                          I know it makes no sense, transfered data of a summary request (from a PI Server to a PI Client) should be the summary only, not the whole bunch of PI points' values.

                           

                          But, in any case, I need to be absolutly sure of this feature.

                           

                          To answer your questions:

                           

                          - Data transfer is peculiar because we need to reduce network traffic as much as possible.

                           

                          - We're in a pre-implementation analysis phase and we're looking for solutions which can fit our requirements.

                           

                          Summaries2 method seems to be the best way to obtain required data but I need to go deeper into this "network load issue".

                            • Re: Data load for summaries
                              fgarriel

                              @Leonardo,

                               

                              Summaries2, as implemented in CPI3PIPoint, will calculate server-side for PI Server 3.4 and later.  PI Server 3.3 and earlier do not have the RPC support for this.

                                • Re: Data load for summaries
                                  cmanhard

                                  Just a couple notes, since AF SDK was referenced, and some misleading statements were made

                                  •   An AF SDK equivalents of PI SDK's Summaries2 doexist.  The method is PIPoint.Summaries for direct PI Point access, and AFAttribute.Data.Summaries for reference via an AF Attribute.  

                                   

                                  •   Most all functions of PI SDK's PIData and PIData2 functions are available directly from the AF SDK's PI Point and AFData object

                                   

                                  •   The AF SDK call executes on the PI Server, just as in the PI SDK.

                                   

                                  • Beginning in AF 2.6, there are also List equivalent methods, that allow you to summarize multiple points/attributes in one call.

                                   

                                  •   The AF SDK does offer, in addition, a client side summary, which is available on any collection of data that you have already retrieved client side.  Use AFValues.Summary/Summaries for this function.  The client side calculations have the same capabilities as the server side.  These calculations are sometimes used in Abacus to boost performance when the client-side cache indicates that the data is available for client side summaries.