System Components

A typical Historian system contains components for the following functions:
  • Data collection/migration
  • Data storage
  • Data management, analysis, and monitoring
  • Data retrieval

All these components communicate with the Historian server through the Historian API. This topic describes the functions performed by each component.

Data Collection/Migration Components

Data collection/migration components are used to collect data from various sources and ingest the data into a Historian server (or to cloud). The following data collection/migration tools are used in Historian:
Data Collectors
Data collectors gather data from a data source based on a schedule or an event, process it, and forward it to the Historian server or a web socket for archiving. The following collector functions are common across all types of collectors (except the File collector):
  • Automatically discovering available tags from a data source and presenting them to Historian Administrator and Configuration Hub.
  • Providing options to send data to an on-premises Historian server or to cloud through a web socket connection
  • Performing a first-level of data compression (collector compression).
  • Responding to control requests, such as requests to pause or resume data collection.
  • Maintaining a local cache of tag information to sustain collection while the server connection is down.
  • Buffering data during loss of connection to the server and forwarding it to the server when the connection is restored.
  • Optionally, automatically adjusting timestamps for synchronizing collector and archiver timestamps.
  • Supporting the timestamp of both the collector and the device, as applicable.
  • Scheduling data polling for a polled collection.

For mission-critical data collection, you can set up redundant collectors. Historian includes a mirroring option for high availability and load balancing, so the data is available all the time.

For more information, refer to .

File collector
A File collector imports .csv and .xml files into the Historian server. These files can contain data, alarms, tag names, or other configuration information, and messages that you can import with a File collector.
The Extract, Transform, and Load (ETL) Tools
Transferring data from one Historian server to another is typically performed by the data collectors. These tools provide a connected streaming data transfer mechanism (except the calculation and file transfer collectors). In a system where a steady network connection is not possible or not cost-effective, a periodic file-oriented data transfer is preferred. The Historian ETL tools consist of a comprehensive set of file-oriented data extraction, transfer, and loading tools.
Migration Tools
Migration tools are used to migrate existing Historian configuration and data and iFIX Alarms and Events collector data to the Historian server. Tags, collection rates, and deadbands for tags configured in Historian can be transferred by the migration tools.

For more information, refer to Migrating Classic Historian Data to Your Historian Database and Migrating Advance Historian DataMigrating Advanced and Classic Historian Data.

Collector Toolkit
Collector Toolkit is used to develop a customized collector. You can use Collector Toolkit to write programs that integrate with Historian and leverage the same configuration tools, redundancy schemes, and health monitoring as the collectors. It collects data and messages from a data source and writes them to a data archiver. Each deployment of a collector developed on the Collector Toolkit consumes a client access license (CAL).

Data Storage, Analysis, and Maintenance Components

Data collected by the collection/migration components is stored in the Historian server (or cloud). You can then analyze and maintain the data using the following components:
Historian Alarms and Events
Historian Alarms and Events provides tools to collect, archive, and retrieve alarms and events data in Historian.
Historian Administrator
Historian Administrator provides a graphical user interface for performing Historian maintenance functions in a Windows environment including:
  • Tag addition, deletion, and configuration.
  • Maintaining and backing up archive files.
  • Data collector configuration.
  • Security configuration.
  • Searching and analyzing system alerts and messages.
  • Configuring the Calculation collector to create a new tag based on calculations, and storing the result as time series data.
  • Setting up your OPC Classic HDA server and OPC UA HDA server.
Web Admin console
The Web Admin console provides a dashboard, which displays the health of the system in one convenient location. You can view the following diagnostics details:
  • Data node diagnostics: Displays the Historian servers connected to the system.
  • Collector diagnostics: Displays the details of the faulty collectors.
  • Client diagnostics: Displays the top five busiest clients connected to the system.

The dashboard provides interactive configuration management, which helps you configure mirror nodes, tags, collectors, data stores, and archives. However, the functionality of the Calculation collector and the ability to configure OPC HDA servers are not included in the Web Admin console.

The Web Admin console uses a CAL.

The Historian Server
The Historian server performs the following tasks:
  • Manages all system configuration information.
  • Manages system security, audit trails, and messaging.
  • Services write and read requests from distributed clients.
  • Performs final data compression.
  • Manages archive files.
Historian Diagnostics Manager
The Historian Diagnostics Manager monitors the health of the Historian system and executes a few rules on the nodes, collectors, and clients, and generates the appropriate fault record. The details of these faults are displayed in the Web Admin console.
The following are the faults and their severity level:
Fault Type Fault Description Fault Level
Collector Status Fault Generated when the collector goes to the Unknown or Stopped state. Error
Collector Overrun Fault Generated when at least one overrun occurs on a collector in last 24 hours. Warning
Collector OutOfOrder Fault Generated when at least one OutOfOrder occurs on a collector in last 24 hours. Information
Collector StoreForward Fault Generated when the collector Last Data Sample Time Stamp is delayed by more than an hour. Information
Collector ConnectDisconnect Fault Generated when the collector is Disconnected and connected at least once in last 24 hours. Information
Service DiskSpace Fault Generated when a node disk space is about to reach its free space limit. Warning
Client InActive Fault Generated when a client is not active for the last one hour. Information
Client BusyRead Fault Generated when the client makes relatively more number of reads per minute. Information
Client BusyWrite Fault Generated when the client makes relatively more number of writes per minute. Information
Client TimedOutRead Fault Generated when the client makes a timed out read query. Warning
Client Manager
Client Manager acts as the client connection manager and message router for the system. It examines messages and forwards them to the correct data archiver or to Configuration Manager. This service is deployed only for mirrored systems.
Configuration Manager
Configuration Manager maintains and distributes the entire system configuration. There can be multiple Historian nodes but only one Configuration Manager. This Configuration Manager node is used to store system configuration, such as tag names, collector names, and Historian node names. This service is deployed only for mirrored systems.
Configuration Hub
Configuration Hub allows you to manage the Historian systems and its components, including:
  • Creating a Historian system, and adding its components
  • Creating mirror groups
  • Creating and managing data stores
  • Installing and managing collector instances

Using Configuration Hub, you can achieve high availability of servers in a Historian system.

Remote Collector Manager
Typically, collectors are distributed geographically, and so, accessing them can be challenging and not cost-effective. To overcome this challenge, the Remote Collector Management agent provides the ability to manage collectors remotely.
Historian Tomcat Container
An instance of Tomcat is used exclusively by Historian as an open source Java-based web server to support the Web Admin console and Trend Client. It supports SSL and the use of certificates for enhanced security.
Proficy Authentication Tomcat Container
An instance of Tomcat is used exclusively as an open source Java-based web server to support external Proficy Authentication.
Historian PostgreSQL Database
An instance of PostgreSQL is used exclusively to store tag names to improve searching for tags in the Trend tool and Web Admin console.
Proficy Authentication PostgreSQL Database
An instance of PostgreSQL is used exclusively to store Proficy Authentication details.
Reverse Proxy Service
Provides secure connection by supporting https protocol.
Indexing Service
The indexing service speeds up search results. It periodically queries the database, creates a tag index, and stores the information in the PostgreSQL database instance.
Excel Add-In
Excel Add-in is a very useful tool for presenting and analyzing data stored in archive files. Using this tool, you can design custom reports of selected data, automatically process the information, and analyze the results. You can also use it for performing tag maintenance functions in Historian, such as adding tags, importing or exporting tags, or editing tag parameters.
Excel Add-in for Operations Hub
The Excel Add-in for Operations Hub enables you to query historical data of objects and object types defined in Operations Hub.

Customers purchasing Historian Standard or Enterprise licenses now receive a no-cost license for the Operations Hub server and the Historian Analysis run-time application. The Operations Hub server enables customers to define an asset model including tag mapping. The Historian Analysis application is a pre-built Operations Hub HTML5 application that enables users to do advanced trend analyses, including the ability to make annotations.

The OPC Classic HDA server
The OPC Classic HDA server reads the raw data stored in Historian and sends it to the connected OPC clients. The Historian OPC Classic HDA server complies with OPC Server HDA 1.20 standards.
Historian SDK
The Historian Software Development Kit (SDK) is designed for writing Visual Basic (VB) or Visual Basic for Applications (VBA) scripts. Using the SDK, you can develop your own scripts to perform selected repetitive or complex tasks or to make your own custom user interface. To use the SDK, create a VB/VBA project with the SDK as a project reference.

Data Retrieval Components

Data retrieval components are used to retrieve data that is stored in the Historian server. Historian contains the following data retrieval components:
Historian Alarms and Events
Historian Alarms and Events provides tools to collect, archive, and retrieve alarms and events data in Historian.
Client Manager
Client Manager acts as the client connection manager and message router for the system. The Client Manager will examine messages and forward them to the correct Data Archiver or to the Configuration Manager. This service is deployed only for mirrored systems.
Configuration Manager
Configuration Manager maintains and distributes the entire System configuration. There can be multiple Historian nodes but only one Configuration Manager. This Configuration Manager node is used to store system configuration, such as tag names, collector names and Historian Node names. This service is deployed only for mirrored systems.
Proficy Authentication Tomcat Container
An instance of Tomcat is used exclusively by Historian as an open source Java-based Web server to support an external Proficy Authentication.
Historian PostgreSQL Database
An instance of PostgreSQL is used exclusively by Historian to store tag names to improve searching for tags in the Trend tool and Web Admin console.
The OPC Classic HDA server
The Historian OPC Classic HDA server reads the raw data stored in Historian and sends it to the connected OPC Classic HDA collectors. The Historian OPC Classic HDA server is in compliance with OPC Server HDA 1.20 standards.
The OPC UA HDA Server
The Historian OPC UA HDA server retrieves historical process data from Proficy Historian, and sends it to OPC UA HDA clients. It dynamically updates the clients when tags are added and/or deleted in Historian. Clients that comply with this specification can connect to the OPC UA HDA server to retrieve data from Historian.

For information, refer to the OPC UA HDA Server section of the online documentation.

User API
The Historian User API is intended to provide high speed read/write access to Historian data and read access to Historian tags. There is no access to alarms, events, or messages.

Since the Historian User API is the basic building block for connectivity, all Historian functions, including data collection, administration, and data retrieval, use the Historian API. You can use the Historian User API to connect to a local Historian server or a remote one (by just providing the IP address or host name of the server).

Use the API to develop applications in C or C++, which read and write data to the Historian server when the Historian SDK and Historian OLE DB do not meet your project requirements for performance or programming language.

Historian allows you to develop both 32-bit and 64-bit User API programs.
Note: If you want to build a 32-bit User API program on a 64-bit operating system, then you need to rename the ihuapi32.lib to ihuapi.lib and include it in your program.
REST APIs
Historian includes a REST API to connect your Java Web-based Clients with Historian data.
Historian SDK
The Software Development Kit (SDK) is designed for writing Visual Basic (VB) or Visual Basic for Applications (VBA) Scripts. Using the SDK, you can develop your own scripts to perform selected repetitive or complex tasks or to make your own custom user interface. To use the SDK, create a VB/VBA project with the SDK as a project reference. Refer to the SDK Help system for more information.
Historian Client Access API
The Historian Client Access API is a .NET Core assembly that interacts with Historian from any .NET Core applications. Since it works with .NET Core, it is platform-independent - you can use it on any operating system, such as Windows, Linux, and Mac OS.
Note: You can still use the old Client Access API, which is a .NET assembly. It is installed when you install Client Tools.
JAVA APIs
Most open source, quick development applications rely on JAVA as their programing language. To enable easier integration with Historian, JAVA APIs are provided. The JAVA APIs support 64-bit Windows Operating Systems.