1 Reply Latest reply on Jul 14, 2015 1:25 PM by dng

    Want to fetch large chunk of data...should be fast.


      Hello Everyone,


      We have a PI Server with around 20k tags.

      One of our customer built Web App which is Java based and using jdbc data access product to access the data and show it as a trend on it.


      the user will select one tag and period for a trend.Some tags have 1 sec, 3 sec, 5 sec and 30 sec data.

      The data sample  are as follows

      • 1 tag, 1 week 10 min avg data
      • 1 tag, 1 month 10min avg data
      • 1 tag, 6 months 10min avg data
      • 1 tag, 1year 10 min avg data
      • 50 tags, 6 months 10 min, 1day avg avg data
      • 50 tags, 1yesr day avg data


      We are trying other data fetching possibilities, right now we tried web services based data access.


      We need some guidance and best solution for above data fetching issue.

      The option I see

      • Web API
      • PI AF SDK
      • PI SDK
      • Web Service
      • OLEDB


      Also if there any other indirect method like developing AF SDk Wrapper as data provider kindly let us know.



        • Re: Want to fetch large chunk of data...should be fast.

          Hi Ilyas,


          First, let me comment on the various data access options:

          • PI Web API: Easy-to-use cross-platform/multi-user programmatic access to the PI System. It uses a RESTful interaction model. Technology is under active development.
          • PI AF SDK: Since it is a .NET library, easy integration with the .NET framework. Technology is also under active development.
          • PI SDK, PI Web Service, and PI OLEDB: I would not encourage using these technologies because there are newer, more robust alternatives (above options). Also see: Deprecating the PI SDK


          While PI AF SDK offers the most functionality, PI Web API is undergoing a lot of development and has recently added Ad-Hoc read/write bulk calls to speed up data retrieval (see change log for the 2015 R2 version). Both products (with the latest releases) allow you to send bulk summary calls to the server where the calculation is performed server-side (since you are interested in average data).


          Another point to note: PI Web API is built on top of the AF SDK, which is designed to be run within the context of a single user. To support multiple simultaneous users, PI Web API hosts multiple instances of the AF SDK. These instances of the AF SDK are provisioned automatically by PI Web API.


          I also encourage you to check out Lonnie's comment in a previous discussion about other functional differences between PI AF SDK and PI Web API: What is the best way to connect PI AF with .net web portal and why ?