The Axibase Time Series Database is designed to store and retrieve the following record types: Series, Properties, and Messages.
Series is a time-indexed array of observations, each described with a timestamp and a numeric value.
Each series is uniquely identified by a composite key consisting of metric, entity, and optional key-value pairs called tags.
- Metric represents the name of a measurable numeric attribute such as ‘cpu_busy’ or ‘temperature’.
- Entity is a physical or logical object being monitored such as ‘nurswgvml007’ (hostname) or ‘eia.gov’ (organization).
- Tags provide an additional level of detail about the observation, for example the disk’s ‘mount’ for the ‘df.bytes.percentused’ metric.
Properties provide a way to store a collection of arbitrary key-values describing a given entity, organized by type. The property record is uniquely identified by type, entity, and optional keys specified at write time. Unlike series, the property record stores only the most recent values. The values are stored as text.
For example, disk_info type for an entity may store properties such as disk_type, disk_model etc. The property’s schema would be similar to the following relational representation except that the list of tag columns may be different for each record and only the most recent record is retained for each composite key.
CREATE TABLE disk_info ( entity VARCHAR(64), TIME TIMESTAMP, disk_name VARCHAR(64), disk_type VARCHAR(64), disk_status VARCHAR(64), disk_model VARCHAR(64), disk_size VARCHAR(64), PRIMARY KEY (entity, disk_name) );
Messages are events stored as text with optional type, source, and tags. Messages for the same entity, time, and type/source tags are automatically de-duplicated.
Series, Property, and Message records are always associated with an entity.