Data/Segment Management

Figure 1. Runtime Engineering - Segment

When data is archived using the NGA, the underlying database(s) will use ever growing diskspace for storing data, meta information, indexes etc. To keep this heap of data manageable, NGA structures data of each archive group into segments.

A segment is a timeboxed unit of data, containing all value change or alert information of archived data point elements assigned to a specific archive group for a fixed interval of time (i.e. between the start and the end time of the segment). Segments do not overlap in time and contain all information specific to this time period (i.e. raw data, indexes, …)

The term “segment” is an artificial term used by the NGA and is implemented differently, depending on underlying database technology. InfluxDB® implements segments as so-called “shards” whereas in Oracle “tablespaces” are used for the same purpose. The common detominator for all segments is the ability to easily create a new segment (segment switch), remove it from the database (for deletion), copy it (backup) or reintegrate an already deleted (but backed up) segment again (restore).

Some of these operations are performed automatically by the NGA depending on the settings described in the chapter Configuration - Backend Profile. This includes segment switch, backup and deletion. Some of these operations can also be performed manually by the operator (backup, deletion, switch only if the DB supports it – see Configuration - Backend Profile). Restore must always be performed manually.