PI Web Service Overview
The PI Web Service is a web application that enables developers on
virtually any web-aware platform to
retrieve data from OSI's PI historian.
It acts as a single point of access to PI data and eliminates the need
to install any client-side software.
The PI Service allows speedy access to current and archived
data and can be configured to permit writing data down to the
historian. Multiple queries can run in parallel. The full range of sample methods can be utilised
such as raw, average or standard deviation. It provides a
web-based GUI for interactive queries and administration.
Centralised connection management and diagnostic logging permits a
dramatic reduction in support requirements. Connection pooling and
caching techniques give rise to marked improvements in developer
productivity. As a bonus, there is usually an across-the-board
improvement in application performance, sometimes by two orders of
The PI Service was written in response to a business requirement for a
unified and reliable way to interface to the PI historian. While OSI
provides the PI-API and PI-SDK, both of these toolkits require
significant programming skills to retrieve data in a robust and
efficient way. Furthermore, either the API or the SDK has to be
installed on each client machine to allow applications to run, and the
firewall must be configured to allow each client direct access the historian.
It is frequently the case that use of
the PI-API or PI-SDK can give rise to slow, inefficient and
hard-to-manage architectures. Without tight controls and standards, a variety of approaches
proliferate over time according to the skills and preferences of
locally-available developers. The original version of the PI Service was
written to replace an uncontrolled ecosystem of several different
applications, some of which were leaking resources to the extent that
the historian had to be restarted. There was no way of finding out which
were the offending applications.