An InfluxQL function that returns an aggregated value across a set of points. See InfluxQL Functions for a complete list of the available and upcoming aggregations.
A collection of points in line protocol format, separated by newlines (
A batch of points may be submitted to the database using a single HTTP request to the write endpoint.
This makes writes using the HTTP API significantly more performant by drastically reducing the HTTP overhead.
InfluxData recommends batch sizes of 5,000-10,000 points, although different use cases may be better served by significantly smaller or larger batches.
continuous query (CQ)
An InfluxQL query that runs automatically and periodically within a database.
Continuous queries require a function in the
SELECT clause and must include a
GROUP BY time() clause.
See Continuous Queries.
Related entries: function
A logical container for users, retention policies, continuous queries, and time series data.
The attribute of the retention policy that determines how long InfluxDB stores data. Data older than the duration are automatically dropped from the database. See Database Management for how to set duration.
Related entries: retention policy
The key-value pair in InfluxDB’s data structure that records metadata and the actual data value. Fields are required in InfluxDB’s data structure and they are not indexed - queries on field values scan all points that match the specified time range and, as a result, are not performant relative to tags.
Query tip: Compare fields to tags; tags are indexed.
The key part of the key-value pair that makes up a field. Field keys are strings and they store metadata.
The collection of field keys and field values on a point.
The value part of the key-value pair that makes up a field. Field values are the actual data; they can be strings, floats, integers, or Booleans. A field value is always associated with a timestamp.
Field values are not indexed - queries on field values scan all points that match the specified time range and, as a result, are not performant.
Query tip: Compare field values to tag values; tag values are indexed.
InfluxQL aggregations, selectors, and transformations. See InfluxQL Functions for a complete list of InfluxQL functions.
Tokens that refer to continuous query names, database names, field keys, measurement names, retention policy names, subscription names, tag keys, and user names. See Query Language Specification.
The text based format for writing points to InfluxDB. See Line Protocol.
The part of InfluxDB’s structure that describes the data stored in the associated fields. Measurements are strings.
Contains internal information about the status of the system. The metastore contains the user information, databases, retention policies, shard metadata, continuous queries, and subscriptions.
Related entries: server
The local server’s nanosecond timestamp.
The part of InfluxDB’s data structure that consists of a single collection of fields in a series. Each point is uniquely identified by its series and timestamp.
You cannot store more than one point with the same timestamp in the same series. Instead, when you write a new point to the same series with the same timestamp as an existing point in that series, the field set becomes the union of the old field set and the new field set, where any ties go to the new field set. For an example, see Frequently Asked Questions.
points per second
A deprecated measurement of the rate at which data are persisted to InfluxDB. The schema allows and even encourages the recording of multiple metric vales per point, rendering points per second ambiguous.
Write speeds are generally quoted in values per second, a more precise metric.
The attribute of the retention policy that determines how many copies of the data are stored in the cluster.
InfluxDB replicates data across
N data nodes, where
N is the replication factor.
retention policy (RP)
The part of InfluxDB’s data structure that describes for how long InfluxDB keeps data (duration), how many copies of this data is stored in the cluster (replication factor), and the time range covered by shard groups (shard group duration). RPs are unique per database and along with the measurement and tag set define a series.
When you create a database, InfluxDB automatically creates a retention policy called
autogen with an infinite duration, a replication factor set to one, and a shard group duration set to seven days.
See Database Management for retention policy management.
How the data are organized in InfluxDB. The fundamentals of the InfluxDB schema are databases, retention policies, series, measurements, tag keys, tag values, and field keys. See Schema Design for more information.
An InfluxQL function that returns a single point from the range of specified points. See InfluxQL Functions for a complete list of the available and upcoming selectors.
The collection of data in InfluxDB’s data structure that share a measurement, tag set, and retention policy.
Note: The field set is not part of the series identification!
The number of unique database, measurement, and tag set combinations in an InfluxDB instance.
For example, assume that an InfluxDB instance has a single database and one measurement.
The single measurement has two tag keys:
If there are three different
statuses then the series cardinality for the measurement is 6
(3 * 2 = 6):
Note that, in some cases, simply performing that multiplication may overestimate series cardinality because of the presence of dependent tags.
Dependent tags are tags that are scoped by another tag and do not increase series
If we add the tag
firstname to the example above, the series cardinality
would not be 18 (3 * 2 * 3 = 18).
It would remain unchanged at 6, as
firstname is already scoped by the
See Frequently Asked Questions for how to query InfluxDB for series cardinality.
A machine, virtual or physical, that is running InfluxDB. There should only be one InfluxDB process per server.
Related entries: node
A shard contains the actual encoded and compressed data, and is represented by a TSM file on disk. Every shard belongs to one and only one shard group. Multiple shards may exist in a single shard group. Each shard contains a specific set of series. All points falling on a given series in a given shard group will be stored in the same shard (TSM file) on disk.
The shard duration determines how much time each shard group spans.
The specific interval is determined by the
SHARD DURATION of the retention policy.
See Retention Policy management for more information.
For example, given a retention policy with
SHARD DURATION set to
1w, each shard group will span a single week and contain all points with timestamps in that week.
Shard groups are logical containers for shards. Shard groups are organized by time and retention policy. Every retention policy that contains data has at least one associated shard group. A given shard group contains all shards with data for the interval covered by the shard group. The interval spanned by each shard group is the shard duration.
Subscriptions allow Kapacitor to receive data from InfluxDB in a push model rather than the pull model based on querying data. When Kapacitor is configured to work with InfluxDB, the subscription will automatically push every write for the subscribed database from InfluxDB to Kapacitor. Subscriptions can use TCP or UDP for transmitting the writes.
The key-value pair in InfluxDB’s data structure that records metadata. Tags are an optional part of InfluxDB’s data structure but they are useful for storing commonly-queried metadata; tags are indexed so queries on tags are performant. Query tip: Compare tags to fields; fields are not indexed.
The key part of the key-value pair that makes up a tag. Tag keys are strings and they store metadata. Tag keys are indexed so queries on tag keys are performant.
Query tip: Compare tag keys to field keys; field keys are not indexed.
The collection of tag keys and tag values on a point.
The value part of the key-value pair that makes up a tag. Tag values are strings and they store metadata. Tag values are indexed so queries on tag values are performant.
The date and time associated with a point. All time in InfluxDB is UTC.
Related entries: point
An InfluxQL function that returns a value or a set of values calculated from specified points, but does not return an aggregated value across those points. See InfluxQL Functions for a complete list of the available and upcoming aggregations.
tsm (Time Structured Merge tree)
The purpose-built data storage format for InfluxDB. TSM allows for greater compaction and higher write and read throughput than existing B+ or LSM tree implementations. See Storage Engine for more.
There are two kinds of users in InfluxDB:
- Admin users have
WRITEaccess to all databases and full access to administrative queries and user management commands.
- Non-admin users have
WRITE) access per database.
When authentication is enabled, InfluxDB only executes HTTP requests that are sent with a valid username and password. See Authentication and Authorization.
values per second
The preferred measurement of the rate at which data are persisted to InfluxDB. Write speeds are generally quoted in values per second.
To calculate the values per second rate, multiply the number of points written per second by the number of values stored per point. For example, if the points have four fields each, and a batch of 5000 points is written 10 times per second, then the values per second rate is
4 field values per point * 5000 points per batch * 10 batches per second = 200,000 values per second.
wal (Write Ahead Log)
The temporary cache for recently written points. To reduce the frequency with which the permanent storage files are accessed, InfluxDB caches new points in the WAL until their total size or age triggers a flush to more permanent storage. This allows for efficient batching of the writes into the TSM.
Points in the WAL can be queried, and they persist through a system reboot. On process start, all points in the WAL must be flushed before the system accepts new writes.
Related entries: tsm