Home › Technical articles

Đọc bằng tiếng Việt

Canary Historian architecture: collectors, store and forward, Views, Axiom and how it is licensed

TDL Industrial Automation · Last updated:

How the Canary System from Canary Labs is built, according to its documentation: OPC UA, OPC DA, MQTT, SQL, CSV and Ignition collectors, the store and forward service that buffers to disk when the network drops, layouts on a plant network, Views and Axiom, licensing by tag count and what to agree before installing.

The Canary System from Canary Labs is a process historian with its own collectors, a store and forward service, a time-series database, an asset layer called Views and a set of clients. This article explains, from Canary's own documentation, how data moves from the plant into the Historian, where each part should run on a plant network, how users read the data and how Canary licenses the system. For what a historian does in general and how it compares with FactoryTalk Historian, AVEVA PI System and Ignition, see What is a process historian.

What the Canary System is made of

Canary's product page lists these components:

Component What Canary says it does
Historian stores time-series data in Canary's own NoSQL database, with lossless compression
Data Collectors read data from OPC, MQTT, SQL and other sources
Store & Forward delivers data to the Historian and buffers it while the link is down
Views (Virtual Views) asset definitions and a unified namespace (UNS) over the stored tags
Axiom dashboards and trends
Calcs Server real-time and historical KPIs
Events batches, downtime and shifts
Excel Add-in live data inside Excel
How data moves through the Canary SystemFive layers from top to bottom: data sources; collectors and the store and forward service placed near the source; the Historian with its own store and forward service; Views; and the clients that read the data, such as Axiom, the Excel Add-in, Calcs & Events and ODBC.How data moves through the Canary SystemData sourcesin the plantOPC UA servers, OPC DA serversMQTT brokers (Sparkplug B, JSON)SQL databases, CSV files, Ignition gatewayscollectors read the sourceCollector + storeand forwardon or near the sourceOPC UA, OPC DA, MQTT, SQL,CSV, Ignition module collectorscollectors are not licensedlink lost: buffered to local disk, backfilled when it returnsgRPC, one port (55291)Historianwith its own store and forwardCanary's NoSQL time-series database, lossless compressionone store and forward can push to several HistoriansViews reads the HistorianViewsthe gate for every clientstitches several Historians into one sourceVirtual Views: asset model, UNSclients go through ViewsClientsread and calculateAxiom (dashboards, trends), Excel Add-inCalcs & Events: KPIs, batches, downtime, shiftsODBC, Read API for other applicationsBased on Canary Labs: Canary System product page, Data Collector Overview and Methodology(version 24) and Understanding Canary System Architecture Options (version 25). Figure: drawn by TDL.
Figure 1: How data moves through the Canary System. On a phone, swipe sideways to see the whole figure.

How data gets in: collectors

Canary's knowledge base lists one collector per source type:

  • OPC UA and OPC DA, following the OPC Foundation standards, with deadbands, update rate, metadata and data transformation;
  • MQTT, following the Sparkplug B specification 2.2 and 3.0, and also JSON payloads, with several brokers and TLS;
  • SQL: Microsoft SQL Server, MySQL and Oracle, read from a queue table at a set interval, not from the production tables;
  • CSV files, imported when they arrive;
  • CygNet, through its .NET API;
  • a module for Inductive Automation's Ignition, which logs Ignition tags to one or more Canary Historians;
  • a gRPC or Web API for custom collectors.

Canary states that collectors are not licensed: they come with the Canary System. A tag reaches the Historian only through one of these collectors, so the first design question is what software in the plant already holds the data. For Allen-Bradley PLCs, that is covered in Logging Allen-Bradley PLC data to Canary.

Store and forward: what happens when the network drops

Each collector hands its values to a store and forward service, which pushes them to the store and forward service paired with the Historian. The two talk over gRPC; when the collector is on another machine, Canary describes a single gRPC endpoint on port 55291 between them. If that link is lost, the collector-side service caches data to its local disk. By default it stops writing new values to disk when only 4,000 MB of free space remains. When the link returns, it backfills the Historian with the buffered values and clears the cache. The service also watches the connection and can notify an administrator when a DataSet stops receiving data.

Two rules in the same article matter for design. The OPC UA and OPC DA collectors reject values with historical or duplicate timestamps, so they are meant for live data, not for back-loading old records; other collectors can be set to allow insertions. And when two OPC collectors log the same tags for redundancy, store and forward keeps the first value that arrives for each timestamp ("first-in-wins").

Where each part runs

Canary's architecture article gives several layouts:

Layout How it is built What to watch
Collector on the Historian server the collector reads the source from the Historian machine no local buffering at the source; a network drop between the two loses data
Collector and store and forward near the source both installed on or next to the OPC server, MQTT broker or SCADA Canary's recommended layout; buffering covers network outages and Historian patching
Proxy in a DMZ a standalone store and forward service relays data between two firewalls one open port, no traffic from the upper network down
Redundant Historians one store and forward service pushes to several Historians the same data reaches every Historian
Hot-hot OPC logging two OPC collectors, each on its own OPC server first-in-wins per timestamp; hot/cold OPC servers with separate collectors are not supported
Cloud other components may run in the cloud collectors stay local to the data source

Canary also notes that the components can be placed to match the Purdue / ISA-95 levels, with Publisher and the ODBC server at level 3 or 4, and that for more than about 50 concurrent clients it is worth running separate Views services for Axiom users and for API or third-party applications.

Reading the data: Views, Axiom and other clients

Clients do not read the Historian directly. Views is the gate: it controls client access, can stitch several Historians together, and holds Virtual Views, the asset model that groups raw tags into equipment and areas. Axiom is Canary's client for dashboards and trends, the Excel Add-in brings the same data into spreadsheets, and Calcs & Events connects through Views, calculates KPIs or detects events, and writes its results back through store and forward; events are kept in a local SQLite database by default. Other software reads through the ODBC server or the Read API.

How Canary licenses the system

Canary's pricing page describes the model without needing a quote:

  • a licence is sized by tag count, where a tag is one stream of time-series values (also called a point);
  • Axiom and Excel clients are unlimited, on perpetual and on subscription licences;
  • a perpetual licence is paid once, with CustomerCare (updates, security patches, support) renewed each year; a subscription includes CustomerCare;
  • Canary also offers a hosted private cloud and optional add-ons such as the ODBC Connector.

This article does not give prices. The input any quotation needs is a reliable tag count: how many tags will be logged now and in the next few years.

What to agree before installing

  • The tag list and count, grouped by source (OPC server, MQTT broker, Ignition gateway, SQL table).
  • Where each collector and its store and forward service will sit, and how much free disk it has for buffering.
  • The firewall rules between levels: the gRPC port between store and forward services (55291) and the connections clients need to reach Views.
  • Whether the Historian must be redundant, and how many concurrent clients will connect.
  • How tags will be organised in DataSets and in Virtual Views, so that names and the asset model are settled before data starts to build up.

How TDL approaches it

TDL Industrial Automation is a Canary Certified Partner, listed on Canary's partner page for Vietnam. Our historian work so far has been on Rockwell Automation platforms, for example FactoryTalk View SE with FactoryTalk Historian on the Vinh Hoan FeedOne aquafeed plant. On a Canary project we start from the tag list and the plant network: which PLCs and SCADA servers hold the data, where collectors and store and forward can run, and which levels the firewalls separate. More on SCADA and historian services: SCADA, HMI and plant data integration.

Frequently asked questions

Does Canary need a separate licence for each collector?

No. Canary states that data collectors are not licensed and come with the Canary System; the licence is sized by the number of tags logged.

What happens to data if the network to the Historian goes down?

The store and forward service on the collector side caches values to its local disk and sends them to the Historian when the link returns. By default it stops writing new values when only 4,000 MB of disk space remains, so the buffer time depends on the free disk and the data rate.

Can old data be loaded into Canary through the OPC collectors?

Not through the OPC UA or OPC DA collectors: they reject historical and duplicate timestamps. Canary says other collectors can be configured to allow insertions.

Do users need a licence to view trends in Axiom?

Canary's pricing page states that Axiom and Excel clients are unlimited on both perpetual and subscription licences.

Sources

Read 12 November 2026. This article paraphrases the sources and does not quote them; read the original documents before designing or working on a system.

Related services:
SCADA & historian Ignition (Inductive Automation) Canary Historian