Technical Tips

Real Time eXecutives, Inc.

Technical Tips


Propagation Techniques

This document describes three propagation techniques. These are:

  1. Creating Snapshot Databases
  2. Propagating accumulators - Non-resetting accumulators
  3. Propagating accumulators - Resetting accumulators

Each Propagation technique uses a different propagation algorithm, of which there are several available. These specify how data will be propagated from the source database to the target database. The current algorithms are:

These are set up by including an extra line in the HDBPROP.CNF file. Examples:

The default propagation method is by AVERAGE.

Creating Snapshot Databases

Snapshot databases are useful when the actual value is required at a specific time (for example each day at 7:00 am).

There are two configuration settings which must be setup in order to support a Snapshot database.

First, the database must be setup to have the correct time offset and frequency.
Then the propagation must be setup to propagate the current value at the required time offset.

This is simpler to explain using the 7:00am Snapshot database previously mentioned.

The database "7am_Snap" is configured using HDBINIT. To specify the database frequency, the units for a Daily Snapshot database will be set as Days, and the database interval will be set to 1. The time offset is achieved by setting the Timeslot Adjustment equal to 7 Hours.

Setting up the propagation is simply a matter of creating a new configuration file for HDBPROP.exe. For this example, this should look like:

This will take a snapshot (propagation by current value) from the Minute database and place it into the "7am_Snap" database. Also, it ensures that the phase of the two databases are aligned by using the phase = 420 (420 minutes = 7 hours).

If the above HDBPROP.exe configuration was stored in the file _7amsnap.cnf, the propagation would be achieved by running the command:

Propagating accumulators

Since the information represented by an accumulator is different from that represented by a (temperature or pressure) transducer, the two types of values should not be kept together in the database. This is because it does not make sense to take an average value of an accumulator, instead a snapshot or maximum value should be used.

In order to separate differing types of data with the same database, each should be placed in its own data subset. When inspecting the HISTATUS.DAT file with HDBINIT.exe, the following information would be seen:

Data Base Name...... Minute
Root Directory...... M:\RTXDEMO\MINUTE
Index Directory..... M:\RTXDEMO
16 Variables defined in 3 Subsets
Current History..... 10080 ( 1 Minute ) collections
Database Span....... 11/12/95 10:11 - 11/19/95 10:10
Database Subset Info:
Subset Name Oldest Value Latest Value Last Archive
DCS-1_analog 11/12/95 10:11 11/19/95 10:10 N/A
DCS-1_accums 11/12/95 10:11 11/19/95 10:10 N/A

This shows two subsets (plus the unnamed subset). Each subset is supplied by the same DCS, but the first contains only analogue values (temperatures and pressures, etc), while the second contains the accumulators. The data for each of these subsets must be extracted separately from the DCS. Also, when propagating these subsets into derived databases, a different propagation algorithm should be used for each subset. This is achieved by specifying the subset name and the propagation algorithm in the configuration file for HDBPROP.exe. To propagate only the analogue values the HDBPROP configuration file would look like:

Propagating non-resetting accumulators

Non-resetting accumulators should always be propagated by current value. Setting up this type of propagation is simply a matter of creating a new configuration file for HDBPROP.exe. For this example, this should look like:

Propagating resetting accumulators

Resetting accumulators should always be propagated by maximum value. Setting up this type of propagation is simply a matter of creating a new configuration file for HDBPROP.exe. For this example, this should look like:


RTX Home Page Back Home
Real Time eXecutives, Inc. 1996 - 2007
Page constructed by
RTX Web Services