InfluxDB file system layout

The InfluxDB file system layout depends on the operating system, installation method, or containerization platform used to install InfluxDB.

InfluxDB file structure

The InfluxDB file structure includes of the following:

Engine path

Directory path to the storage engine, where InfluxDB stores time series data, includes the following directories:

  • data: stores Time-Structured Merge Tree (TSM) files
  • wal: stores Write Ahead Log (WAL) files.

To customize this path, use the engine-path configuration option.

Bolt path

File path to the Boltdb database, a file-based key-value store for non-time series data, such as InfluxDB users, dashboards, tasks, etc. To customize this path, use the bolt-path configuration option.

Configs path

File path to influx CLI connection configurations (configs). To customize this path, use the --configs-path flag with influx CLI commands.

InfluxDB configuration files

Some operating systems and package managers store a default InfluxDB (influxd) configuration file on disk. For more information about using InfluxDB configuration files, see Configuration options.

File system layout

macOS Linux Windows Docker Kubernetes

macOS default paths

PathDefault
Engine path~/.influxdbv2/engine/
Bolt path~/.influxdbv2/influxd.bolt
SQLite path~/.influxdbv2/influxd.sqlite
Configs path~/.influxdbv2/configs

macOS file system overview

  • ~/.influxdbv2/
    • engine/
      • data/
        • TSM directories and files
      • wal/
        • WAL directories and files
    • configs
    • influxd.bolt
    • influxd.sqlite

When installing InfluxDB on Linux, you can download and install the influxd binary, or you can use a package manager. Which installation method you use determines the file system layout.

Installed as a standalone binary

Linux default paths (standalone binary)

PathDefault
Engine path~/.influxdbv2/engine/
Bolt path~/.influxdbv2/influxd.bolt
SQLite path~/.influxdbv2/influxd.sqlite
Configs path~/.influxdbv2/configs

Linux file system overview (standalone binary)

  • ~/.influxdbv2/
    • engine/
      • data/
        • TSM directories and files
      • wal/
        • WAL directories and files
    • configs
    • influxd.bolt
    • influxd.sqlite

Installed as a package

InfluxDB 2.1 supports .deb- and .rpm-based Linux package managers. The file system layout is the same with each.

Linux default paths (package)

PathDefault
Engine path/var/lib/influxdb/engine/
Bolt path/var/lib/influxdb/influxd.bolt
SQLite path/var/lib/influxdb/influxd.sqlite
Configs path/var/lib/influxdb/configs
Default config file path/etc/influxdb/config.toml

Linux file system overview (package)

  • /var/lib/influxdb/
    • engine/
      • data/
        • TSM directories and files
      • wal/
        • WAL directories and files
    • configs
    • influxd.bolt
    • influxd.sqlite
  • /etc/influxdb/
    • config.toml (influxd configuration file)

Windows default paths

PathDefault
Engine path%USERPROFILE%.influxdbv2\engine\
Bolt path%USERPROFILE%.influxdbv2\influxd.bolt
SQLite path%USERPROFILE%.influxdbv2\influxd.sqlite
Configs path%USERPROFILE%.influxdbv2\configs

Windows file system overview

  • %USERPROFILE%\.influxdbv2\
    • engine\
      • data\
        • TSM directories and files
      • wal\
        • WAL directories and files
    • configs
    • influxd.bolt
    • influxd.sqlite

InfluxDB Docker images are available from both Dockerhub and Quay.io. Each have a unique InfluxDB file system layout.

Dockerhub

The InfluxDB Dockerhub image uses /var/lib/influxdb2 instead of /var/lib/influxdb so you can easily mount separate volumes for InfluxDB 1.x and 2.x data during the upgrade process.

Dockerhub default paths

PathDefault
Engine path/var/lib/influxdb2/engine/
Bolt path/var/lib/influxdb2/influxd.bolt
SQLite path/var/lib/influxdb2/influxd.sqlite
Configs path/etc/influxdb2/configs

Dockerhub file system overview

  • /var/lib/influxdb2/
    • engine/
      • data/
        • TSM directories and files
      • wal/
        • WAL directories and files
    • influxd.bolt
    • influxd.sqlite
  • /etc/influxdb2/
    • configs

Quay.io

Quay default paths

PathDefault
Engine path/root/.influxdbv2/engine/
Bolt path/root/.influxdbv2/influxd.bolt
SQLite path/root/.influxdbv2/influxd.sqlite
Configs path/root/.influxdbv2/configs

Quay file system overview

  • /root/.influxdbv2/
    • engine/
      • data/
        • TSM directories and files
      • wal/
        • WAL directories and files
    • configs
    • influxd.bolt
    • influxd.sqlite

Kubernetes default paths

PathDefault
Engine path/var/lib/influxdb2/engine/
Bolt path/var/lib/influxdb2/influxd.bolt
SQLite path/var/lib/influxdb2/influxd.sqlite
Configs path/etc/influxdb2/configs

Kubernetes file system overview

  • /var/lib/influxdb2/
    • engine/
      • data/
        • TSM directories and files
      • wal/
        • WAL directories and files
    • influxd.bolt
    • influxd.sqlite
  • /etc/influxdb2/
    • configs

storage internals