8.3 - Tag Historian Changes

I'm curious if anyone with Inductive is able to spill the beans on what might be coming. I've heard there are to be significant changes to the historian module. The only details I've seen are to do with the API call - which I'm guessing is the system.tag.qeuryTagHistory()

Is Inductive able to comment on if the structure of the SQL tables is going to change at all?

My suspicion is that they will be using a different backend completely, or it will be part of the data "streams" they teased.

All of your mainstream historians I've used, utilize some sort of history blocks stored in individual files, where each block is a day's worth of data that doesn't use a database engine at all except for having an interface for 3rd party access. These files can be backed up and restored if you ever need to retrieve history from many years ago that has since been purged. It's more efficient than standard databases and easier for non-tech savvy users to backup and restore data. If they go this direction, I know my clients would be happier because now data is much more storage efficient, and makes backups/restores easier.

Edit: It's possible they could be using some open source time-series database too, like InfluxDB.

There will be an entirely new backing Java API for interacting with the historian, with some backwards compatibility "shims" in place to allow existing historian implementations (including our own DB based historian) to continue to work. There's also a new implementation of a historian that works more like other SCADA systems out there - it's attached to the Ignition process and stores data in a very efficient binary format.

As a regular end user, expect the following:

  1. Everything you're currently using to interact with the historian will continue to work, basically just as it has.
  2. If you choose to use this new system, you'll get some nice performance gains, and probably some extra functionality.
  3. Third party module authors will have a much easier time integrating with Ignition, hopefully leading to many more options for efficient historians in the future.
11 Likes

Sounds really interesting, a few questions:-

  1. If the new historian is attached to the Ignition process, will Ignition Replication replicate the history store too, not needing to provide a replicated database would be a huge benefit?

  2. Will the existing system.tag.queryTagHistory() & system.tag.storeTagHistory() functions still work with the new history provider?

  3. Will there be some way of migrating all of our existing history to the new provider?

  4. Will there be some way of updating values within the history store?

2 Likes