Documentation

Data retention in InfluxDB

The InfluxDB retention enforcement service checks for and removes data with timestamps beyond the defined retention period of the bucket the data is stored in. This service is designed to automatically delete “expired” data and optimize disk usage without any user intervention.

By default, the retention enforcement service runs every 30 minutes. You can configure this interval with the storage-retention-check-interval configuration option.

Bucket retention period

A bucket retention period is the duration of time that a bucket retains data. You can specify the retention period when you create or update a bucket. Retention periods can be infinite or as short as an hour. Points in a bucket with timestamps beyond the defined retention period (relative to now) are eligible for deletion.

Shard group duration

InfluxDB stores data on disk in shards. Each shard belongs to a shard group and each shard group has a shard group duration. The shard group duration defines the duration of time that each shard in the shard group covers. Each shard contains only points with timestamps in a specific time range defined by the shard group duration.

By default, shard group durations are set automatically based on the bucket retention period, but can also be explicitly defined when creating or updating a bucket.

For more information, see InfluxDB shard group duration.

View bucket retention periods and shard group durations

Use the influx bucket list command to view the retention period and shard group duration of buckets in your organization.

When does data actually get deleted?

The InfluxDB retention enforcement service runs at regular intervals and deletes shard groups, not individual points. The service will only delete a shard group when the entire time range covered by the shard group is beyond the bucket retention period.

Data is queryable until deleted

Even though data may be older than the specified bucket retention period, it is queryable until removed by the retention enforcement service.

To calculate the possible time data will persist before being deleted:

  • minimum: bucket-retention-period
  • maximum bucket-retention-period + shard-group-duration

For example, if your bucket retention period is three days (3d) and your shard group duration is one day (1d), the retention enforcement service deletes all shard groups with data that is three to four days old the next time the service runs.

4d

3d

2d

1d

0d

Shard group

Shard

Shard group

Shard

Shard group

Shard

Shard group

Shard

Deleted

3d retention period


Was this page helpful?

Thank you for your feedback!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Read more

InfluxDB v3 enhancements and InfluxDB Clustered is now generally available

New capabilities, including faster query performance and management tooling advance the InfluxDB v3 product line. InfluxDB Clustered is now generally available.

InfluxDB v3 performance and features

The InfluxDB v3 product line has seen significant enhancements in query performance and has made new management tooling available. These enhancements include an operational dashboard to monitor the health of your InfluxDB cluster, single sign-on (SSO) support in InfluxDB Cloud Dedicated, and new management APIs for tokens and databases.

Learn about the new v3 enhancements


InfluxDB Clustered general availability

InfluxDB Clustered is now generally available and gives you the power of InfluxDB v3 in your self-managed stack.

Talk to us about InfluxDB Clustered