2 Replies Latest reply on Oct 18, 2018 2:31 PM by NormRidg

    PI Archive Compression Settings - Deviation And Minimum Time


      I have general question on how the archive compression settings interact with each other.  Here is an example.  Exception minimum time is 15 seconds and compression minimum is 1 minute.  If the PI tag deviation is high enough there would have been 4 snapshots taking within that 1 minute window.  If all four were outside of the compression deviation setting which of the four is archived.  Is it the final one?  Or does it do some kind of interpretation?

        • Re: PI Archive Compression Settings - Deviation And Minimum Time
          John Messinger

          It's important to note that the interaction of compressing and exception attributes such as these can't be viewed in isolation without looking at the full set of attributes used for these two filtering algorithms.


          The two attributes you have specifically asked about are considered as noise filters:


          Exception Minimum (ExcMin) - Specifies the minimum time (in seconds) between events that the interface reports to PI Data Archive. For example, if ExcMin is 5, the interface discards any values collected within five seconds of the last reported value. Typically, you set ExcMin to zero.


          Compression Minimum (CompMin) - Specifies the minimum time between events in the archive. If the time since the last recorded event is equal to or greater than the point's CompMin value, the current snapshot value is recorded in the archive. For any point coming from an interface that does exception reporting, set CompMin to zero. Typically, you use CompMin to prevent an extremely noisy point from using a large amount of archive space. For a data acquisition system with a slow scan time, this parameter is not important.


          Therefore, other attributes such as ExcDev and ExcMax must also be considered when determining what values (and how many) would be passed to the PI Data Archive by an interface. ExcMin alone does not determine this, so setting ExcMin to 15 does not guarantee that 4 exceptions per minute will be sent to the snapshot - all this does is prevent any values being sent within 15 seconds of the last exception, even if such a value were to exceed the exception deviation deadband (ExcDev). What if you have to wait another 2 minutes before a value exceeds the ExcDev threshold? ExcMin won't force a value to be sent to the snapshot after the period has elapsed. ExcDev and ExcMax are more likely to influence the rate of exceptions - ExcMin by default is set to zero. Even ExcMax doesn't force values to be sent to the snapshot once that maximum period has elapsed - the next value received by the interface will pass the exception test even if it's within the ExcDev deadband. This is to ensure the snapshot doesn't go 'stale'.


          Similarly with CompMin. By default this point attribute is set to zero, and you would only set a non-zero value as a noise filter. In practice I have never seen this used in all the years I have been working with PI. CompDev and CompMax are more likely to influence which snapshot values are archived.

          1 of 1 people found this helpful