We have a lot of UFL interfaces. Is there any advantage in either using or bypassing the snaphot? We are running all tags with no compression and we don't want compression. The data is coming sorted ascending by time.
The snapshot subsystem has a few roles. First off, the general data flow is something like:
Data Source (Exception rules may apply) -> Buffer Subsystem (events flagged for compression) -> Snapshot Subsystem (Compression applied) -> Event Queue -> Archive Subsystem
In the case of a client that is subscribed to snapshot events such as ProcessBook DataLink, the snapshot data (uncompressed) will be pushed to the client until a refresh (archive call) is made. The Snaphshot subsystem both applies compression before archiving and buffers the data in the event queue if the archive is not available.
Since the data is uncompressed in your case, it may not make difference as long as the events are coming in in-order (for performance reasons).
Edit on performance: Using /lb caches events locally on the interface, making one bulk call to write many events to the PI Server. Without the /lb (or /lbs) flag, every event read by the UFL interface causes a call to the PI Server to write the data. A rough estimate is that the throughput is increased by a factor of 4 to 5 by using /lb, compared to not using the /lb parameter.
The advantage of using compression is that your data is less dense and is faster to extract at a cost to accuracy depending on your compression settings. All data calls to send data PI Values to a PI Data Archive I go through the PI Snapshot. In the case of out-of-order data it will simply pass-through the snapshot data since the snapshot value is the most current value.
Turning compression off, still means all new data will be sent through the snapshot.
If the UFL file has multiple tags does the interface perform a bulk call per tag or a single bulk call? Is there any impact on performance by have the file tag sorted (and then of course data sorted for each tag)?
One typo - If the UFL file has multiple tags does the interface perform a bulk call per tag or a single bulk call? Is there any impact on performance by have the file tag sorted (and then of course DATE sorted for each tag)?
Another question would be is this assuming the data is buffered or buffered when the /lb parameter is used. With buffered data the hand-off to buffer is extremely fast as there is no network call involved.
Retrieving data ...